




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JIANGXI AGRICULTURAL UNIVERSITY本 科 毕 业 论 文(设 计)标题:三号黑体,居中题目: 大豆虫害信息管理平台的设计与实现 (小二宋体加粗 )每个横线间左右要严格对齐学 院: 软件学院 姓 名: 杨平 学 号: 20071500 专 业: 软件工程 班 级: 软件工程076班 指导教师: 杨文姬 职 称: 讲师 注:该页无页眉和页脚二零一一年四月摘要内容(宋体,小四号),论文中所有文字行间距22磅摘要前空一行,摘要(黑体,四号,居中),摘要后空一行摘要宋体,小四号黑体,四号,左对齐“大豆虫害信息管理平台”实现了大豆虫害信息的管理、虫害信息查询、用户管理和论坛管理等四个功能模块。经过需求分析,并在此基础上提出了系统的总体设计方案,给出了系统各功能模块的详细设计;对数据库、系统前台各功能模块的设计与实现等,进行了详尽的描述,对系统前后台的连接作了充分的说明。“大豆虫害信息管理平台”是基于目前比较流行的MVC(Model+View+Control)模式来开发的,系统前台采用CSS+DIV进行布局,后台采用(SSH)struts2+spring+hibernate的开源技术框架进行开发和实现。该系统提供了友好系统界面,易于操作和使用,交互性强,后台逻辑明了,结构清晰。中文和英文摘要各占一页关键词: MVC;SSH;大豆虫害注:中英文摘要这两页页眉是论文题目,页脚是罗马数字的页码Abstract“Times New Roman”字体,小四号,加粗,小写“Times New Roman”字体,四号,加粗,左对齐Abstract内容一律采“Times New Roman”字体,小四号Abstract前空一行,Abstract(Times New Roman,四号,加粗,居中),Abstract后空一行,英文一律采“Times New Roman”字体Wheat pest information management and Exchange platform realized the wheat pest management information,pest information search, user management and forum management of four functional modules.Through needs analysis, and on this basis, the overall design scheme proposed system, system modules are given the relationship between structure and plan;Database design, system front of each functional module design and implementation,Carried out a detailed exposition, and describes the design process, the system was fully connected before and after the station description.Wheat pest information management and Exchange platform is based on the current popular MVC (Model + View + Control) model developed.System front layout using CSS + DIV, as background (SSH) struts2 + spring + hibernate in the open source development framework for the development and implementation technology.The system provides a friendly system interface, easy operation and use, interactive, background logical and clear, clear structure.Keywords: MVC; SSH; wheat insect disease 一级标题(黑体,小四号,顶头,题号与文字间空半字)黑体,三号,居中目 录二级标题(宋体,小四号,开头空一字,题号与文字间空半字)1 绪论11.1 背景和意义11.2 发展趋势11.3 系统开发目标22 系统需求分析32.1 系统功能分析32.2 系统功能结构32.3 功能描述和用例分析4三级标题(宋体,小四号,开头空二字,题号与文字间空半字)2.3.1 系统用例图42.3.2 虫害资料管理42.3.3 用户信息管理72.3.4 论坛管理102.4 目标系统性能需求122.4.1 时间需求122.4.2 空间需求122.5 目标系统其他需求132.5.1 安全性132.5.2 可靠性133 系统总体设计143.1 系统整体架构设计143.3.1 系统结构划分143.3.2 系统架构示意图163.2 系统模式设计173.3 系统的设计原则183.3.1 系统操作方便、快捷183.3.2 先进性原则183.3.3 系统的易用性和易维护性183.3.4 系统的标准性183.3.5 故障处理要求183.4 系统开发与运行环境设计193.2.1 软件环境193.2.2 硬件环境194 数据库设计204.1 数据库设计204.1.1 实体类抽象204.1.2 关系对象映射204.2 数据库的选择235 系统详细设计245.1 包图设计245.2 系统类图设计255.2.1 系统类图255.2.2 实体类255.2.3 控制类265.2.4 业务接口265.2.5 业务层处理类275.2.5 其他相关类276 模块设计与实现286.1 虫害信息管理286.1.1 虫害信息添加286.1.2 虫害信息修改306.1.3 虫害信息删除306.2 虫害信息查询316.3 用户信息管理336.3.1 用户登录336.4 论坛管理347 系统测试367.1 系统测试367.2 测试总结36总结与展望38致 谢39参考文献40注:目录页无页眉和页脚黑体,小四号,顶头二级标题:黑体小四号,左顶格,数字与文字间空两格,自占一行一级标题:黑体四号,左顶格,数字与文字间空两格,上下空一行,自占一行1 绪论正文段落文字:宋体小四号,左空两格起段落,数字与英文用Times New Roman小4号1.1 背景和意义大豆是大豆属植物的统称,是一种在世界各地广泛种植的禾本科植物,最早起源于中东的新月沃土地区。大豆是世界上总产量第三的粮食作物,仅次于稻米,大豆排名第三。我国也是生产大豆的生产大国。为此,农作物科研工作者在大豆的虫害防治方面做出了艰辛的努力,取得了很大的成绩,针对各种不同的大豆虫害,研究出较多的防治方法及措施,许多科研工作者在植物保护方面进行了科学研究,发表了大量的论文和论著。在很多教科书和技术文献资料中都记载着大豆的虫害防治技术和方法,对大豆的虫害防治具有指导作用;此外,在Internet高速发展的今天,系统网络化、信息化建设水平不断深入,越来越多的农民也通过互联网及时的掌握最新的各种农业技术。基于以上背景,利用计算机技术建设大豆虫害信息管理平台更显得意义非凡,该平台充分利用了Internet网络技术将分散在各种文献资料中的大豆虫害防治技术和方法集中起来并建立数据库,构建一个大豆虫害的网络数据库系统,同时可以随时更新最新发布的防治大豆虫害的新技术,并通过论坛的形式,供众多的使用者进行技术交流,在线咨询等,以最快的速度为使用者提供便利,为农业科研工作者和大豆生产者提供即时的信息服务,进一步推广了农业科学技术,提高了大豆作物的生产水平,具有一定的社会效益和实践意义。1.2 发展趋势注:该页及后续页的页眉是论文题目,页脚是阿拉伯数字页码目前欧美等发达国家的农业信息技术应用已进入产业化发展阶段,各类信息技术和相关产品已经在农业生产和各类经营管理中得到广泛应用。其中英国也建立了覆盖全国的农业计算机信息网络系统,并在涉农部门和农户中广泛应用。德国已在农作物生产中成功地应用了3S技术,如:对土地精确定位,按肥力程度确定播种量和施肥量等。法国建立了覆盖全国的虫害测报计算机网络系统,可实时提供虫害情况、农药残毒预报和有关农药评价等信息。欧盟建立了覆盖全欧洲的农作物估产体系,建立了农业环境、生态监测网络,向数字化、集成化与智能化方向发展。我国农业信息化起步较晚,直到1987年农业部成立信息中心,开始重视和推进计算机技术在农业领域的试点和应用,我国农业信息化的建设才初具雏形。要想使农业生产效率跃居世界先进水平,就应当形成一个长远科技战略的共识,制定好中国农业信息化战略。目前,国内外研究大豆虫害信息管理平台还不多见。国内有江苏省农业信息中心研制的“作物、植物虫害防治GIS信息决策支持系统”,该信息管理系统软件开发工具为ACCESS(有条件的地方可选用大型数据库)、ARCGIS。利用ARCGIS开发人员开发了功能比较齐全的空间数据处理模块,并与传统的数据库管理模块实现了无缝连接,形成了完整的农业、林业虫害信息管理系统。1.3 系统开发目标 系统采用B/S体系结构,利用JSP和SQL Server 2000 进行开发,具有简单通用性的特点。任何人员只要知道系统所在地址,就能对其进行访问。系统开发的目标主要是:(1) 用户进入网站后可以浏览虫害的详细信息和论坛。(2) 如果是注册用户还可以发布帖子和回帖,并能对自己个人的详细信息进行修改。(3) 虫害管理就可对虫害数据进行管理。(4) 系统管理员可对用户信息和论坛进行管理。2 系统需求分析2.1 系统功能分析由需求分析可知,大豆虫害信息管理平台应有虫害管理员,系统管理员,普通用户,游客四类用户。对游客来说他只是具有对系统中的虫害信息进行查询,浏览论坛,不能发表回帖和提出话题;普通用户具有除了游客所具有的功能外,还具有提出话题供用户讨论和回帖的功能,能更新个人信息;虫害管理员具有除了普通用户所具有的功能外,还有添加和更新虫害信息的功能;对系统管理员来说他除具有普通用户的功能,还有可以对普通用户提出的话题进行审核和发布,可以冻结(删除)用户,修改用户的权限等功能。2.2 系统功能结构根据2.1节的系统功能分析可知“大豆虫害信息管理平台”包括用户信息管理,虫害信息管理,论坛管理,虫害信息查询四个模块,其功能结构图如图2-1所示。图序、图名置于图下方,宋体5号居中,数字与英文用Times New Roman 5号,序号由章节号-该图在本章中的序号图序、图名置于图下方,宋体5号居中,数字与英文用Times New Roman 5号,序号由章节号-该图在本章中的序号用户信息管理论坛管理虫害信息查询 回帖管理虫害信息管理 信息添加 信息更新 信息删除 话题管理 回帖发表 回帖删除按中文名查询按英文名查询 模糊查询冻结/删除用户 修改权限 修改资料 找回密码 注册用户 登录系统 话题修改 话题删除 话题发布 话题提出 举报与支持大豆虫害信息管理平台图2-1系统功能结构图2.3 功能描述和用例分析有四级标题的话,四级标题为宋体小四号,左顶格,数字与文字间空两格,自占一行三级标题:宋体小四号,左顶格,数字与文字间空两格,自占一行用例是用来描述业务功能的,但用例图却不仅仅是角色和用例的堆积,首先,用例是有层次概念的,一个大的用例可以用更小的多个用例来细化,直到无需再细分为止;一个用例的执行是要有前因和后果的(前提是什么,结果会怎么样);一个用例一般是由几个有序的步骤来完成的;一般情况下,一个用例是要处理一个到多个对象的(如果一个用例执行中没有处理任何东西,则通常这个用例不是系统必须的),这些对象就是要在后面的静态视图中要详细描述的,根据分析下面列出本系统的系统用例图和各个用例的用例描述。2.3.1 系统用例图图序、图名置于图下方,宋体5号居中,数字与英文用Times New Roman 5号,序号由章节号-该图在本章中的序号图2-2系统用例图2.3.2 虫害信息管理(1)功能描述信息添加:将虫害及防治技术信息录入数据库;信息更新:对存在数据库中的虫害或防治技术信息的更新;信息删除:将无用或错误的虫害或防治方法技术信息从数据库中删除掉。信息查询:按中文名查询:根据用户输入的虫害的中文名称查找所需要的信息;按英文名查询:根据用户输入的虫害的英文名称查找所需要的信息;模糊查询:根据用户输入的虫害相关信息查找所需要的信息。(2)用例描述表2-1 虫害信息添加用例内容说明用例编号Insect_add用例名称虫害信息添加用例说明虫害管理员对虫害信息进行添加参与者虫害管理员前置条件用户进入虫害信息添加页面基本事件流1. 用户按照提示将信息填写完整,若没有完整填写信息,将会跳至a3,用户按要求填写虫害信息后,提交。2. 用户点击提交按钮页面跳转到添加成功页面,否则调到扩展路径a2,对于有相同虫害名的信息将不允许添加跳到a1路径。3. 用例结束。异常事件流a1. 系统不保存添加的信息 提示用户重新命名。a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。a3. 输入信息不合法,将提示用户继续填写合法信息。后置条件系统成功保存新添加的虫害信息。表序、表名置于表上方,宋体5号居中,数字与英文用Times New Roman 5号,序号由章节号-该表在本章中的序号,表格内段落为单倍行距表2-2 虫害信息更新用例内容说明用例编号Insect_update用例名称虫害信息更新用例说明虫害管理员对虫害信息进行更新参与者虫害管理员前置条件用户进入虫害信息修改页面基本事件流1. 虫害管理员在检查虫害信息时若发现信息有错误,可点击进入虫害信息修改页面。2. 系统返回给系统管理员他希望修改的虫害的详细信息,虫害管理员需要按要求填写修改信息,否则跳到路径a3。3. 若是修改虫害名称,若数据库中有相同的记录,系统将跳到a1路径。4. 管理员正确提交信息,系统成功保存修改后信息,若发生异常跳至a2路径。异常事件流a1. 系统不保存添加的信息 提示用户重新命名。a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。a3. 输入信息不合法,将提示用户继续填写合法信息。后置条件系统成功更新虫害信息。表2-3 虫害信息删除用例内容说明用例编号Insect_delete用例名称虫害信息删除用例说明虫害管理员对虫害信息进行删除参与者虫害管理员前置条件用户进入虫害信息删除页面基本事件流1. 虫害管理员在检查虫害信息时若发现信息没有必要存在,可点击进入虫害信息删除页面。2. 系统返回给系统管理员他希望删除的虫害的详细信息,虫害管理员需要确定是否真的删除该信息,若是系统将删除虫害信息并将其图片信息,防治信息一起删除。3. 若删除时发生异常跳至a2路径。异常事件流a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统成功删除虫害信息。表2-4 虫害信息查询用例内容说明用例编号Insect_query用例名称信息查询用例说明信息查询参与者虫害管理员、普通用户、系统管理员、游客前置条件用户进入系统首页基本事件流1. 用户可以按照中文名,英文名,学名,和全文搜索来查找他需要的信息,用户需要按要求输入条件,执行正确,系统将显示所有符合条件的信息的列表提供给用户选择查看详细信息。若输入条件不合法跳到a1。异常事件流a1. 系统提示用户输入条件不合法,重新输入。a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统返回用户需要的虫害信息。2.3.3 用户信息管理(1)功能描述用户登录:用户登录系统才能做某些操作;注册用户:游客需要注册成为系统用户才有一些其他的功能;修改用户信息:用户修改密码,个人显示信息等;修改权限 :从系统用户中选择出系统管理员或虫害管理员;冻结(删除)用户:将系统中不合法的用户(对论坛等有非法操作的用户)删除;找回密码:当用户忘记密码后,用户通过系统找回帐号信息;(2)用例描述表2-5 用户登录用例内容说明用例编号User_login用例名称用户登录用例说明用户登录参与者普通用户、虫害管理员、系统管理员前置条件用户知道正确的用户名和密码基本事件流1. 用户输入帐号和密码。2. 用户点击重填按钮,转入扩展路径a1。3. 用户点击登录按钮。4. 系统验证用户名和密码,验证失败跳到a3。5. 系统保存登录者信息。异常事件流a1. 用户输入的密码被清除。a3. 系统弹出窗口提示:“用户名、密码错误,请重新登录”。后置条件系统成功保存登录者信息。表2-6 用户注册用例内容说明用例编号User_register用例名称用户注册用例说明用户注册参与者普通用户,虫害管理员,系统管理员前置条件用户打开了系统注册页面基本事件流1.用户按照提示将信息填写完整,若没有完整填写信息,将会跳至a3。用户点击提交按钮页面跳转到a1。异常事件流a1. 系统保存用户登录信息。a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。a3. 注册不成功,将提示用户继续填写合法信息。后置条件系统成功保存注册用户的信息。表2-7 修改信息用例内容说明用例编号User_update用例名称用户修改信息用例说明用户修改信息参与者普通用户、虫害管理员、系统管理员前置条件用户成功登录了系统基本事件流1.用户点击修改信息,跳转到个人信息修改页面。2用户目前的基本信息将显示在个人修改页面中,个人信息的修改包括基本信息(姓名,昵称,性别),安全信息(密码保护),用户头像和修改密码(用户头像和修改密码将与基本信息,安全信息的修改分开)。3.基本信息,安全信息修改时,用户需要按照要求填写修改后的信息,点击提交按钮后将保存用户更新的信息,将更新的信息修改到当前的系统,并跳转到主页。发生错误跳到扩展路径a2。4.用户头像的修改,系统将删除原有的头像,用户上传的头像保存到系统中,系统将新的头像名保存到数据库中。发生错误跳到a2。5.用户修改密码,用户被要求输入原始密码及新密码,和新密码确认,新密码两次输入一致将继续,否则跳转到a3,原密码输入正确系统将执行密码的更新,若原密码不正确将条到跳转到a1。用户密码信息被保存,用例结束。异常事件流a1. 原始密码不正确,返回修改页面,继续基本路径。a2. 原始密码不正确,返回修改页面,继续基本路径。a3. 提示用户两次密码不一致的信息。后置条件系统成功保存修改的用户的信息。表2-8 冻结(删除)用户用例内容说明用例编号User_delete用例名称冻结用户用例说明冻结用户参与者系统管理员前置条件用户成功登录了系统基本事件流1. 管理员点击系统管理包括系统用户管理,论坛管理。2. 点击进用户管理后,系统将列出论坛回帖中被举报的用户回帖,当管理员审核后确实被举报的用户有非法操作,将给该用户加一次举报次数,当次数累计到5次时可以被删除。出现异常跳转到扩展路径a2。3. 系统将删除用户所有信息,包括用户的基本信息,头像图片,论坛回帖信息。4. 用户所有的信息被删除,用例结束。异常事件流a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统成功删除用户的信息。表2-9 修改权限用例内容说明用例编号User_role_update用例名称修改权限用例说明修改权限参与者系统管理员前置条件用户成功登录了系统基本事件流1. 管理员点击系统管理包括系统用户管理,论坛管理。2. 点击进用户管理后,系统将列出论坛回帖中被支持的用户回帖,当管理员审核后确实被支持的用户是真实的,将给该用户加一次支持次数,当次数累计到5次时可以被升级。出现异常跳转到扩展路径a2。3. 系统将升级用户的权限信息。4. 用户所有的信息被升级。异常事件流a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统成功修改用户权限的信息。表2-10 找回密码用例内容说明用例编号User_getPassword用例名称找回密码用例说明找回密码参与者普通用户、虫害管理员、系统管理员前置条件用户进入系统主页基本事件流1. 用户点击忘记密码后,将进入找会密码页面,用户需要输入忘记的密码的账号。2. 用户提交账号后,系统验证系统中是否存在此账号,若没有跳转到扩展路径a4。3. 系统将该账号的密码保护问题返回给用户,用户回答密码保护问题的答案,提交。4. 若密码保护答案与系统中的答案一致将给用户修改密码的页面,用户按要求输入新密码提交,后验证通过,用户以后将使用新密码登录系统。若密码保护答案不正确将跳转到扩展路径a4。5. 用户找回自己的密码。异常事件流a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。a4. 系统提示不存在该用户或用户不存在。跳转到密码找回页面。后置条件用户成功找回密码。2.3.4 论坛管理(1)功能描述论坛管理分为话题管理和回帖管理。话题管理:话题提出:用户发布话题供系统用户讨论和研究; 话题删除:系统管理员删除无意义的话题;话题修改:系统管理员若发现话题有问题,可以对其进行修改。话题发布:当系统管理员觉得话题提出的合理就可以发布它提供给用户讨论;回帖管理:回帖发表:系统中的用户可以在话题下发表自己对话题的观点;回帖删除:系统管理员可以删除不合法的回帖;回帖支持和举报:对用户的回帖进行支持和举报。(2)用例描述表2-11 话题提出用例内容说明用例编号Forum_release用例名称话题提出用例说明话题提出参与者虫害管理员、普通用户、系统管理员、游客前置条件用户登录系统基本事件流1. 用户点击提出话题,将话题信息提交给系统。 2. 若用户输入信息不合法,将跳到a1路径。3. 否则系统将保存提交的话题信息。系统出错跳到a2路径。异常事件流a1. 提示输入信息有错误。a2. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件成功提出话题表2-12 话题删除用例内容说明用例编号Forum_delete用例名称删除话题用例说明删除话题参与者系统管理员前置条件用户登录系统基本事件流1. 系统管理员点击论坛管理,若看到话题久未有人讨论,可以将它删除。2. 系统删除话题。并将其回帖信息删除。出现系统问题跳到a2路径。异常事件流a21. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统删除话题表2-13 话题修改用例内容说明用例编号Forum_update用例名称话题修改用例说明话题修改参与者系统管理员前置条件用户登录系统基本事件流1. 系统管理员点击论坛管理,若看到论坛有不合理的地方,可以对它进行修改。2. 系统保存修改后的话题。出现系统问题跳到a2路径。异常事件流a21. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件话题修改完成表2-14 回帖发表用例内容说明用例编号Message_release用例名称回帖发表用例说明回帖发表参与者系统管理员前置条件用户登录系统基本事件流1. 用户浏览到自己感兴趣的话题可以对它发表看法,回帖。2. 系统保存回帖。出现系统问题跳到a2路径。异常事件流a21. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统成功添加回帖信息。表2-15 回帖删除用例内容说明用例编号Message_delete用例名称回帖删除用例说明回帖删除参与者系统管理员前置条件用户登录系统基本事件流1.系统管理员 对不合法的回帖进行删除。2. 系统保存回帖。出现系统问题跳到a2路径。异常事件流a21. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统成功删除回帖信息。表2-16 回帖支持和举报用例内容说明用例编号Message_ zhichi_Jubao用例名称回帖支持和举报用例说明回帖支持和举报参与者系统管理员前置条件用户登录系统基本事件流1. 用户发现系统中的好的回帖可以支持,对不合理的回帖可以对它进行举报。2. 系统记录下支持,举报信息。出现系统问题跳到a2路径。异常事件流a21. 系统弹出窗口提示:“系统出现错误,请与系统管理员联系!”。后置条件系统成功支持和举报回帖信息。2.4 目标系统性能需求2.4.1 时间需求(1)查询的最长等待时间不超过5秒;(2)更新信息的时间不超过5秒;(3)数据上传的时间不超过10秒。2.4.2 空间需求(1)支持的终端数:=1000;(2)支持的并行操作的使用者数:=300;(3)处理的记录数:1000。2.5 目标系统其他需求2.5.1 安全性(1)没有登陆的用户只有浏览论坛信息不能发布、回复;(2)任何用户只有在同意注册协议的前提下才能注册成为会员;(3)任何用户都不能直接输入URL进入系统,否则自动转入首页,只有合法的用户在前台登陆后,通过了身份验证顺利进入系统才能进行相应的管理操作。2.5.2 可靠性设计过程充分考虑恶意代码等非法入侵行为,尽量达到安全性最高。3 系统总体设计3.1 系统整体架构设计3.3.1 系统结构划分传统的基于J2EE应用的B/S 架构的三层结构,将系统划分为表示层、应用层和数据层,如图3-1所示。图3-1 传统的基于J2EE应用的B/S 架构的三层结构图基于J2EE轻量级容器开发是对传统B/S 的三层结构的扩展和延伸,它能够避免如下麻烦:(1) 侵略性的API(代码依赖于EJB)(2) 对容器的依赖(代码不能在EJB 容器之外工作)(3) 只提供固定的一组功能,不具备配置能力(4) 启动时间长,部署过程取决于特定的产品,无法通用因此,“大豆虫害信息管理平台”采用轻量级的框架技术,其整体架构由Struts2 +Spring +Hibernate架构组成,如图3-2所示:图3-2 大豆虫害信息管理平台的整体架构设计图(1)表示层经验表明,最好的方法是选择已存在的并已得到证明了的Web应用框架,而不是自己去设计和开发新的框架。我们拥有多个可选择的框架,如Struts,WebWork和JSF等。“大豆虫害信息管理平台”选择采用的是Struts2。本系统中,Forum_Action、Insect_Action、Users_Action对业务逻辑的调用,同时跳转到相应的页面,在jsp页面中大量使用Struts2标签减少页面中的java代码,服务器端表示层Struts框架完成如下工作:1)客户端表单进入的验证;2)管理请求和响应;3)提供控制器来完成页面流转和向业务逻辑层的委托;4)返回到客户端页面显示。其它:标签技术、MVC、成熟技术等(2)业务逻辑层如果应用是分布式的,采用具有remote接口的EJB是一个好的选择;由于本系统是一个典型的不需要远程访问的Web应用,因此选用POJO,并充分利用Spring 框架的IOC和AOP的特性,将是实现业务逻辑层的更好选择。“大豆虫害信息管理平台”采用Forum_Dao、Insect_Dao、Users_Dao这三个业务逻辑接口,和他们的业务实现Forum_impl、Insect_impl、Users_impl来完成系统的逻辑处理,为了使系统便于维护通过Spring的IOC类管理他们。以后若需要修改,只需对业务逻辑的实现类进行修改就可以,减少他们与表示层的依赖关系。通过上面的描述可知,业务逻辑层Spring框架完成如下工作:1)为服务器端表示层提供松散的耦合;2)处理真实的企业级应用;3)协调各种业务逻辑对象之间的依赖关系;(3)数据持久层在持久层中由于需要利用关系型数据库实现数据的持续化,但在应用中可以存在多种方法可用来实现: 1)JDBC:这是最为灵活的方法,然而,低级的JDBC难以使用,而且质量差的JDBC代码很难运转良好 2)EJB Entity beans:CMP的Entity bean是一种分离数据访问代码和处理ORM的昂贵的方法,它是以应用服务器为中心的方法,即Entity bean不是将应用与某种数据库类型而是EJB容器约束在一起。 3)O/R Mapping 框架:一个ORM框架采用以对象为中心的方法实现数据持续化,一个以对象为中心的应用易于开发并具有高度的可移植性,在该领域中存在几个框架可用JDO、Hibernate、TopLink以及iBATIS 和CocoBase等。在本项目中我选用Hibernate。Hibernate 的功能特点:(1)屏蔽数据库的差异性-数据库方言;(2)以面向对象的数据库访问(减少了SQL);(3)各种对象关系O/R Mapping实现;(4)技术成熟-企业开发;(5)统一的事务管理实现;(6)提供各种缓存技术以提高速度(性能)。正是因为Hibernate的这些功能特点,“大豆虫害信息管理平台”采用Hibernate,本系统中的Forum(论坛)、Insect(虫害)、InsPhoto(虫害图片)、Message(回帖)、Treatment(防治办法)、Users_Info(用户信息)作为系统的基础javaBean,通过Hibernate的ORM来实现他们与关系型数据之间的映射从而实现数据持久层的功能,通过HibernateUtil类完成业务逻辑对数据持久层的访问的统一,因此持久层采用Hibernate框架完成如下工作:(1)对数据库进行查询,得到持久化对象PO;(2)对数据库进行添加、删除、修改的动作并以PO来进行。3.3.2 系统架构示意图本系统采用了多层非分布式的构架,如图3-3所示。(1)系统架构图3-3展示了系统的分层以及每一层中所采用的技术和对应的框架,并且各层将存在于同一个Web容器中。图3-3 大豆虫害信息管理平台架构示意图(2)本形式的架构设计的主要特点1)遵循Sun J2EE中两个主要的原则:“多层架构、松藕合”由于采用分层的设计方式,各个模块功能相互独立封装,层与层之间关联少,保持松耦合连接,稳定性高,便于扩展和维护。2)本项目中的每一层所采用的技术都是可替换的,例如Struts可以被JSF或者Tapestry替换掉,JDO可替换Hibernate。在每个层中都不同程度地应用了J2EE中常用的设计模式。使用基于POJO的轻量级架构,从而使得系统易于测试;便于移植;“开发发布”周期短。3.2 系统模式设计(1)系统模式采用MVC模式如图3-4所示,它是国外用得比较多的一种设计模式。 图3-4 MVC模式图 (2)MVC设计思想MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。1)视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和JSP。2)模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。3)控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。3.3 系统的设计原则3.3.1 系统操作方便、快捷系统的设计一定要为用户提供两种以上的查询方式,“大豆虫害信息管理平台”提供了模糊查询和精确查询两种查询方式。在虫害查询的模块中,用户可以通过虫害的中英文名称查询需求的信息,而在论坛管理模块中,用户可以通过页面的链接,链接到自己发布的主题上,并能查看到其他用户的回帖等。3.3.2 先进性原则 (1)系统的体系结构和开发工具必须先进,而且便于系统升级。(2)开放性和可扩展性。3.3.3 系统的易用性和易维护性提供良好的用户接口,易用的人机交互界面。尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。系统要提供方便的手段供系统维护人员进行数据的备份,日常的安全管理,系统意外崩溃时数据的恢复等工作。3.3.4 系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件,所有这些都要符合主流国际、国家和行业标准。例如在开发中使用的操作系统、网络系统、开发工具都必须符合通用标准,如规范的数据库操纵界面、作为业界标准的TCP/IP网络协议及ISO9002标准所要求的质量规范等;同时,在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。3.3.5 故障处理要求故障处理能力要求很高,系统要有很强的监控能力,一旦系统出现一点故障能马上发出警告信号,并在必要时自动启动备用系统。同时能够设置数据库镜像,定时备份数据和日志,在出现严重故障时能够及时恢复。在本系统中,当用户输入信息错误时,系统会弹出对话框提示错误消息。3.4 系统开发与运行环境设计3.2.1 软件环境(1)操作系统:Windows 2000/XP/2003或更高版本;(2)数据库:MS SQL SERVER 2000;(3)WEB容器:Tomcat 5.5X ,JDK 1.5或更高版本。3.2.2 硬件环境(1)处理器:P3,或更高档的PC,建议使用独立的应用服务器;(2)内存: 256MB或更高;(3)磁盘容量:512MB或更高;(4)其它:鼠标、键盘。4 数据库设计4.1 数据库设计本系统使用了Hibernate;Hibernate是连接Java应用程序和关系数据库的中间件,它封装了JDBC,实现了Java对象的持久化;封装了所有数据访问细节,使业务逻辑层专注于业务逻辑。并且通过对象关系映射(Object Relational Mapping,简称ORM)解决了面向对象与关系数据库之间存在的互不匹配的现象。通过编写hbm2ddl工具类(第四章详细设计中讲到的DBExport 类),将实体类生成数据库表。本系统采用这种技术实现数据库,首先将本系统的实体类抽象出来,再就是将实体类和关系数据库进行映射,完成本系统的数据库设计。4.1.1 实体类抽象本系统设计的实体包括,用户(User_info)、论坛(Forum) 、论坛回帖(Message)、虫害图片(InsPhoto)、虫害基本信息(Insect),虫害预防治疗 (Treatment)这六类实体,将它们抽象出来,本系统的包图在详细设计的4.2.2节中体现。4.1.2 关系对象映射(1) hbm2ddl工具类DBExport.java代码如下(/是注释):package com.wheat.util;import org.hibernate.cfg.Configuration;import org.hibernate.tool.hbm2ddl.SchemaExport;public class DBExport public static void main(String args)/加载配置文件hibernate.cfg.xmlConfiguration cfg = new Configuration().configure() ;/创建hbm2dd模式SchemaExport export = new SchemaExport(cfg);/生成数据表export.create(true, true); 在运行上面程序首先要做的是:在数据库服务器中创建数据库(wheat);再use wheat 才去执行它。(2) 配制文件:hibernate.cfg.xml内容如下(/是注释):./配置数据库地址和名称jdbc:microsoft:sqlserver:/168.15.12.1:1433;DatabaseName=wheat/配置数据库驱动com.microsoft.jdbc.sqlserver.SQLServerDriver/配置登录数据库的用户名和密码sa123/设置数据库方言org.hibernate.dialect.SQLServerDialecttrueupdate/加载本系统中的实体类映射文件(下面以Message.hbm.xml为例说明映射文件意/义).(3)实体类Message.java和配制文件:Message.hbm.xml内容如下(/是注释)。实体类Message.Java代码如下:public class Message implements Serializable .private static final long serialVersionUID = 1L;priv
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 县城两层楼房出售合同范本
- 《有趣的表情》教案
- 厂区设备转让合同范例
- 出租办公室合同范本
- 厨柜翻新服务合同范例
- 厂房倒塌合同范本
- 公立大学教师聘用合同范本
- 农村托管合同范本
- 525全国大学生心理健康日策划书
- 与茶楼合作合同范本
- 房屋市政工程生产安全重大事故隐患判定标准(2024版)宣传画册
- 2025年中国配音行业市场现状、发展概况、未来前景分析报告
- 中建建筑工程竣工验收指南
- 2020年同等学力申硕《计算机科学与技术学科综合水平考试》历年真题及答案
- 电厂应急救援培训
- 智慧能源岛解决方案
- 做最好的教师读书分享
- 眼底疾病课件教学课件
- 二元一次方程组应用题(50题)
- 出生证警示教育培训
- KYC高客营销培训
评论
0/150
提交评论