软件工程毕业设计-农机调配决策系统的设计与实现

上传人:痛*** 文档编号:206567961 上传时间:2023-05-04 格式:DOC 页数:47 大小:336.04KB
收藏 版权申诉 举报 下载
软件工程毕业设计-农机调配决策系统的设计与实现_第1页
第1页 / 共47页
软件工程毕业设计-农机调配决策系统的设计与实现_第2页
第2页 / 共47页
软件工程毕业设计-农机调配决策系统的设计与实现_第3页
第3页 / 共47页
资源描述:

《软件工程毕业设计-农机调配决策系统的设计与实现》由会员分享,可在线阅读,更多相关《软件工程毕业设计-农机调配决策系统的设计与实现(47页珍藏版)》请在装配图网上搜索。

1、河北农业大学本科毕业论文农机调配决策管理系统河北农业大学 本科毕业论文(设计)题 目 农机调配决策管理系统 农机调配决策系统的设计与实现摘要 随着近年来我国经济的高速发展,工业化、城镇化进程的加快,我国农村农业生产方式正在发生深刻变革,劳动力结构快速变化,农业对农机应用的要求越来越高,农民对农机作业的需求越来越迫切,农业机械化在建设现代农业中的支撑作用越来越重要。与此同时,随着工业化、城镇化的加快,随着农村城镇化的不断推进和教育的发展,劳动力大量转移,外出求学或务工。这种情况带来了一定好处的同时,也产生了弊端。农村劳动力逐渐呈现结构性、季节性、区域性短缺的趋势。我国的农机发展水平的不平衡是一直

2、存在的问题。所以农机和农田信息统一管理,并且智能化的生成解决方案的系统,成为一种需求。随着网络技术的不断进步,计算机硬件支持的不断完善以及计算机软件开发理论的日趋成熟,为跨区域,多平台,即时的数据统一的联网农机信息管理以及决策系统的实现和应用提供了强大的技术支持。伴随着B/S开发模式的流行,操作人员仅仅需要一个浏览器就可以随时随地的对信息数据库进行访问,完成信息的添加,更改和删除的工作。由于B/S对多客户端访问的支持,为系统的跨区域使用提供了极大地方便。同时数据库管理系统理论和功能上的完善,也保证联网农机信息管理系统数据的安全性。本论文正是围绕B/S客户端的农机决策调配系统进行展开,论文具体组

3、织结构如下:第一章:本章主要介绍了论文的选题意义及背景,并对该领域的研究现状进行了详细的分析,阐明了论文的主要工作,并简要介绍了论文的结构安排等内容。第二章:本章节则主要介绍涉及到的技术问题,如JAVA和JSP技术,三层架构技术和session技术等,同时介绍了系统实现的物理环境和软件平台。第三章:本章节对项目进行了详细的需求分析,并且实现了系统的概要设计。第四章:本章详细介绍了各主要模块的实现原理,在介绍过程中详细分析了实现的实现代码。第五章:对论文所做工作进行总结,指出了农机调配决策系统设计未来的工作方向。关键词: 农机调配,决策分析;B/S开发;信息数据库; Deployment Of

4、the Decision-making System Of Agricultural Machinery DesignAgricultural Machinery Allocation And DecisionStudent: Liu Yang Adviser: Zhang FanAbstract Along with the advance of network technology, the continuous improvement of the computer hardware support and the maturing of computer software develo

5、pment theory, as the cross-regional, multi-platform, real-time data unified network realization and application of information management and decision making system of agricultural machinery provides powerful technical support. Along with the popularity of B/S development mode, the operator only nee

6、ds a browser can be anywhere at any time to access information database, complete information to add, change and delete. Because the B/S support for multiple clients to visit, provides the system across the land use greatly convenient. At the same time database management system theory and the funct

7、ion is perfect, also guarantee the safety of network information management system of agricultural machinery data.The paper is organized as follows:In chapter 1, the basic knowledge of this project is introduced, followed with the reason why we need to design such a system to show data. Besides, we

8、will introduce the main directions which we will research, and the paper organization.In chapter 2, some related techniques to design are introduced, together with the related knowledge based on the system realization.In Chapter 3, the system analysis is specified; the emphasis of this part is the s

9、ystem overview and specific design. In Chapter 4, thesystem architecture is described; the design and realization ofeachmodule are introduced.In Chapter 5, conclude the work have done in this paper, and give a direction of future work.Key Words Agricultural machinery deployment ;Decision analysis;In

10、formation database;B/S development;目 录1 综述11.1 选题意义及背景11.2 研究现状21.3 论文主要工作21.4 论文结构简介32 相关技术介绍42.1 JAVA和JSP技术简介42.2 三层架构技术简介52.3 SESSION技术简介62.4 平台选择73 系统分析与设计83.1 需求分析83.2 系统的概要设计83.2.1 开发环境83.2.2系统实现功能目标93.2.3 系统权限设计103.2.4 关键功能活动图103.3 数据库设计133.3.1 E/R设计133.3.2 数据库关系图143.3.3 数据库表结构144 系统实现164.1 数

11、据库操作模块的实现164.2 登录模块的实现174.3 权限控制模块的实现184.4 机主(农户)信息管理模块的实现224.4.1 机主(农户)信息新增功能的实现224.4.2 机主(农户)信息查看功能的实现234.4.3 机主(农户)信息修改功能的实现254.2.4 机主(农户)信息删除功能的实现254.2.4 机主(农户)个人信息修改功能的实现254.5 农机(农田)信息管理模块的实现274.5.1 农机(农田)信息新增功能的实现274.5.2 农机(农田)信息查看功能的实现274.5.3 农机(农田)信息修改功能的实现274.5.4 农机(农田)信息删除功能的实现274.6 农机调配决策

12、分析功能模块的实现274.6.1 农机调配决策分析功能的实现275 总结与展望335.1 总结335.2 展望33参考文献35声 明37致 谢381 绪论本章主要介绍了论文的选题意义及背景,并对该领域的研究现状进行了详细的分析,阐明了论文的主要工作,并简要介绍了论文的结构安排等内容。1.1 选题意义及背景 随着工业化、城镇化进程的加快,我国农村农业生产方式正在发生深刻变革,劳动力结构快速变化,农业对农机应用的要求越来越高,农民对农机作业的需求越来越迫切,农业机械化在建设现代农业中的支撑作用越来越重要。农业机械化是加快农业现代化的重要力量,是提高农业科技和装备水平的重要载体。在农业机械化起步阶段

13、,毛泽东同志就提出了“农业的根本出路在于机械化”。国家支持群众性农具改革运动,在有条件的社队成立了农机站,迅速建立了较为完善的农机管理、科研、教育、制造、流通、鉴定、推广、监理、维修和服务体系。 改革开放以来,我国农业和农村经济建设取得重大进展,农业机械化事业也不断发展壮大,特别是进入新世纪以来,呈现出快速健康发展的良好态势。“十一五”时期是我国农业机械化发展环境显著优化、政策法规不断健全、发展速度明显加快、地位作用持续增强的五年,是“农民自主、政府主导、社会服务,共同利用、提高效益”为主要特征的中国特色农业机械化发展道路得以确立并丰富发展的重要时期。在这一时期,全国农机化系统干部职工和广大农

14、民群众共同努力,克服困难,解放思想,大胆创新,胜利完成“十一五”规划确定的主要目标和各项任务,成功实现农业生产方式由人畜力为主向机械作业为主的历史性跨越。农业机械化的快速发展,在很大程度上缓解了农村青壮年劳力短缺对粮食生产带来的不利影响,有效提高了土地产出率、资源利用率和劳动生产率,持续增强了农业综合生产能力、抗风险能力和市场竞争力,为我国粮食生产实现“七连增”及农业农村经济保持良好发展势头提供了强有力支撑。面向机主选择的农机调配问题相当复杂,国内外尚无类似研究报道。在调配算法研究方面,虽然在生产制造行业、车辆调度、物流管理等领域有相应的调度算法,但由于农机作业地区和地块是变化的,目标是多样的

15、,所以没有现成的调配算法可用,必须根据国内实际情况,研究适合的动态路径搜索策略和动态调配算法。本课题研究农机调配中的策略及其优化,目的是为机主提供可行的农机调配方案,为管理部门在必要时提供科学的调度方案,有关这方面的研究成果在国内外尚无报道。农机调配系统的研究和开发是农业机械化发展的必然趋势,具有重要的研究意义和重大的现实应用价值。1.2 研究现状我国地域辽阔、不同地区间气候差异大,这样的特征导致农作物种植和收获形成了时间梯度,为开展农机跨区服务提供了自然条件。我国农业经济水平不高,财力薄弱,土地分散经营,家家户户购买农机会增加农民的经济压力,同时也会造成农机资源的浪费。农机跨区作业是农机跨越

16、地理区域作业的一种农机服务模式。开展社会服务型的农机跨区作业是与我国农业发展状况相适应的。但在跨区作业市场上存在着很多问题。在农作物收获季节,面对大量的农田作业信息,对机主而言,盲目选择农田作业点,凭借主观经验对所选农田作业点进行农机调配,由于没有科学调配方案,常常导致投入多而收益不高。同样在农作物收获季节,当突发情况发生后,农机管理部门要尽快汇总受灾农田信息,组织各地农机迅速做出进行抢收抢种的应急方案。面对多农机多受灾点的农机应急事件,农机主管部门盲目或凭经验制定应急方案,由于调配方案不合理可能会导致应急任务无法顺利完成,造成农作物不同程度的损失。随着农机保有量、燃油费的逐年上升,跨区调配市

17、场的竞争更加激烈23,机主、农机服务组织都迫切地希望调整当前的调配方式,尽可能掌握更加完善的调配信息,在调配前制定较好的调配方案,尽可能的增加调配收益。农机管理部门希望能在突发情况发生后迅速得到在规定期限内完成农田任务且尽可能降低调配成本的应急调配方案。基于上述的分析与研究,研究基于机主选择的农机调配问题和政府主导的应急调配问题是迫在眉睫的。有了科学合理的调配方案,机主能获得更高的收益。有了合理的应急调配方案,农田受灾点才能避免不必要的损失。所以,本论文所关注的方面是对农机主的农机管理和农户的农田信息的管理,以及根据农机和农田资源生成解决方案,本文所展示的系统的开发也是基于这个出发点。1.3

18、论文主要工作论文从实现农机主、农户以及管理员之间的信息管理出发,并且对资源进行管理以及分配生成调配解决方案来完成系统的设计。该系统采用的是B/S模式进行互联,采用JAVA以及JSP技术进行实现,并且使用了Hibernate、Spring、Structs三层架构的,使用SQL SERVER 2008座位数据的最终存储。该系统注重农机主、农户以及管理员之间的信息管理,以及对资源信息的管理分配并生成分配决策方案。论文主要的研究内容如下:(1)使用JSP技术编写B/S模式的系统,系统发布后,各个客户端可以根据系统所在的地址进行访问,网站服务器会根据请求一一进行应答。多个客户端和一个服务器保证了,各个客

19、户端之间平等访问服务器的权利,同时实现了信息的统一存储,从而实现了信息的统一性,保证信息的完整性。(2)使用SQL SERVER 2008数据库管理系统保证了数据的安全性。因为多个客户端的存在,在进行操作是会发生偶然的的问题,比如同时对同一数据信息进行更新。在系统的设计及编写方面不能对这一类问题进行很好的处理,而数据库强大的事务处理功能可以很好的是这个问题得到解决,防止数据发生错乱,导致系统崩溃。(3)将系统的使用者按照不同的决策分配不同的权限,根据权限对用户进行系统的功能分配,各个不同角色的之间的拥有的功能是不同的,并且所能够查看的信息也是不同的。如此便能够将各个用户的查看的信息区分开来,防

20、止了任意修改对信息维护造成的困难,以及可能发生的影响全局的错误操作,也使各个角色有了更加明确的工作。(4)使用session技术对登录的用户进行信息存储,并在各个页面加载之前进行信息检查,防止用户越权访问页面,进行而已操作。同时也通过session技术实现了用户信息的识别,从而保证了系统的安全性。1.4 论文结构简介论文主要是对连锁销售系统设计的描述,主要阐述了该系统的设计架构,简单描述了该系统设计的背景知识,并对论文的工作进行总结,指明了未来的工作方向。本文具体组织结构如下:第一章:本章主要介绍了论文的选题意义及背景,并对该领域的研究现状进行了详细的分析,阐明了论文的主要工作,并简要介绍了论

21、文的结构安排等内容。第二章:本章节则主要介绍涉及到的技术问题,如JAVA和JSP技术,三层架构技术和session技术等,同时介绍了系统实现的物理环境和软件平台。第三章:本章节对项目进行了详细的需求分析,并且实现了系统的概要设计。第四章:本章详细介绍了各主要模块的实现原理,在介绍过程中详细分析了实现的实现代码。第五章:对论文所做工作进行总结,指出了农机调配决策系统设计未来的工作方向。附录1:论文图表目录。附录2:论文相关领域文章翻译工作展示,包括英文原文与译文。2 相关技术介绍项目的决策调配系统采用JAVA和JSP技术实现,采用分层的系统架构方式,数据库选择的是SQL SERVER 2008,

22、编辑环境选择的Myeclipse,服务器使用Tomcat 7.0。本章节则主要介绍涉及到的技术问题,如JAVA和JSP技术,三层架构技术和session技术等,同时介绍了系统实现的物理环境和软件平台。2.1 JAVA和JSP技术简介Java平台由Java虚拟机(Java Virtual Machine)和Java应用编程接口(Application ProgrammingInterface、简称API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已

23、经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。其有三个版本JAVA SE、JAVA EE、JAVA ME。Java语言是一个支持网络计算的面向对象程序设计语言。Java语言吸收了Smalltalk语言和C+语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、和多媒体数据控制等。Java语言有以下特点:面向对象、分布式、可移植性、多线程、动态的、解释性等。Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译

24、一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。JSP(Java Server Pages)由SUN公司倡导,并由多家公司共同参与建立的一种动态网页开发技术。JSP其实就是在传统静态网页HTML中加入了Java程序段和JSP标记(tag)从而形成了JSP文件,用于编写基于Java的后台程序。用JSP开发的Web应用是跨平台的,既能在传统的操作系统上运行也能在Linux系统环境下运行。由于JSP页面是由Html代码和嵌入的Ja

25、va代码构成的,在用户对服务器端页面提出访问请求的时候,Java程序对请求进行处理,然后将反馈内容返回给用户的浏览器。从此,我们也可以看出JSP代码是运行在服务器端的,需要服务器环境的支持。此外,Java Servlet是JSP技术的基础,而且大型WEB程序的开发需要Java Servlet和JSP的配合才能完成。总之,JSP是源于Java技术的,继承了Java技术简单易用,完全面向对象和平台无关性并且安全可靠的特点,在互联网领域有着举足轻重的低位。2.2 三层架构技术简介三层架构是软件体系架构的一种方式,分为三层:数据库访问层(Controller),业务逻辑层(Model),表示层(Vie

26、w)。当然三层的划分不是物理实现时的划分,而是更具各部分功能的不同进行的逻辑上的划分,目的是为了使三个层次具有专一的任务,是逻辑更加清晰。其中业务逻辑层是这三个层中最重要的一层,负责系统主要功能的实现。三个层次各自实现的功能如下:1表示层(View):主要任务就是向用户展示界面,位于最外层,最接近用户,用于显示数据和接收用户输入的数据,负责信息的显示和收集,并将收集的信息向业务逻辑层进行提交处理。一般也为显示或者收集的信息进行基本的有效性判断,从而减轻了业务逻辑层的负担,又不失逻辑分层上的严谨性。2业务逻辑层(Model):主要任务就是实现系统各个功能。从表示层接收信息,更具需要完成的功能进行

27、相关处理。向下调用数据库访问层的方法,向上为表示层提供需要展示的信息。业务逻辑层将整个系统的功能都进行了处理,而不负责信息收集,以及信息的持久化等工作。3数据库访问层(Controller):主要任务就是对数据库进行,增添,删除,修改,查找的基本操作。这些基本操作都是通过业务逻辑层根据不同的功能需求进行相应的调用的,该层不涉及任何业务逻辑上的东西。但是需要注意的是,该层虽然针对原始数据进行操作,但它通常不负责数据物理上的存储以及查找的功能,对于数据物理上的操作,通常该层将借助数据库管理系统,如SQL SERVER 2008 ,My SQL 和Oracle进行具体的操作。当然有时该层也会访问二进

28、制文件,文本文档或者XML文档等。通过以上三层的划分,表示层不直接与数据库访问层进行交互,也就是说数据的交互需要通过业务逻辑层才能进行,从而使业务逻辑层可以对信息进行功能上的处理以及合法性检验的工作。表示层和数据访问层对功能的实现一无所知,表示层只负责界面怎么展示信息,数据库访问层只负责去数据库里得到信息,具体这些信息该怎么用都是业务逻辑层需要干的事。但是业务逻辑层对数据“从哪里来”,数据到“哪里去”同样一无所知。三个层次的交互关系如下图:表示层业务逻辑层数据访问层数据库系统图2-1三层架构各层之间交互图关于三个层次的划分:表示层:只向用户展示信息,采集用户输入的信息,并且将信息传递给业务逻辑

29、层,此层不涉及任何的业务逻辑。业务逻辑层:只从表示层接收信息,根据功能需求做出相应处理,然后利用数据访问层进行增删改查等基本操作,并将信息整合之后向界面层进行反馈。该层不管数据的来与去。数据访问层:只负责数据的增加,删除,查询和更改操作,该层是被业务逻辑层更具需求进行调用的。该层不涉及任何业务逻辑。进行层次的划分,本质上的目的是降低耦合,大大降低了各个模块间的依赖,优点在于使不同层次的开发人员只关注整个结构中的某一层,加快开发进度。在系统的后期维护中,能够很容易的用新的实现替换掉原有层次的实现,而保持其他层次不变,这样就极大地降低了维护的成本和时间。但由于数据在各个层次之间的传递,是的系统的性

30、能降低了,同时可能还会增加系统的开发成本。2.3 SESSION技术简介Session是指用户在初次浏览某个网站时,将于该网站的服务器进行连接,同时在服务器中将保存一份有浏览器信息生成的在服务器端唯一识别的信息,这份信息将一直保持到用户关闭浏览器,结束这次访问。Session涉及客户端即浏览器,同时也涉及服务器端,比并且需要不间断的访问才能保持、需要注意的是,同一主机的不同客户端(即不同的浏览器)对同意服务器进行访问,在服务器中生成的Session是不同的,也就是说session生成的单位是客户端对服务器一对一的访问,而不是主机对服务器的访问。客户端请求请求服务器接收请求建立session读取

31、,更改session图2-2 Session技术客户端于浏览器之间交互图存储于服务器的session可以在客户端与服务器的会话中中多次使用,也就是说客户端可以从服务器的到一些有用的信息,也可将一些信息存进Session,供客户端后期访问。Session的这一特性,可以帮助B/S系统实现诸多技术上的问题。比如用户是否登录的判断,用户登录后权限的检查,界面刷新过程中临时信息的存储等,这些问题本系统也是通过Session技术进行解决的。2.4 平台选择论文设计的系统在Windows 7系统上实现,采用的是MyEclipse编辑环境,该软件同时集成了运行JSP系统所需服务器,无需进行繁琐的配置就可以在

32、浏览器中进行操作。同时Myeclipse支持JSP类型WEB界面的开发。由于本系统采用的是SQL SERVER 2008数据库,Myeclipse同时提供了对数据库完美的支持,为系统的开发提供了方便。3 系统分析与设计本章节对项目进行了详细的需求分析,并且实现了系统的概要设计,关键的功能绘制活动图,包括需要实现的功能和权限分配等问题,并且介绍了详细设计中各个模块中关键功能的实现代码分析。3.1 需求分析1、机主信息管理机主个人信息管理(增删改查),管理员权限下对机主个人信息的管理,以及机主个人对个人信息的管理。2、农户信息管理农户个人信息管理(增删改查),管理员权限下对农户个人信息的管理,以及

33、农户个人对个人信息的管理。3、农机信息管理农机信息的管理(增删改查),管理员权限下对农机信息的管理,以及机主权限下对农机信息的设置管理。4、农田信息管理农田信息的管理(增删改查),管理员和机主权限下对农田信息的管理,以及农户权限下对农机信息的设置管理。5、用户登陆权限限制根据用户是管理员、机主、农户的角色不同,在登录时对相应角色可以操作的功能进行限制。各个角色对应相应的功能6、 生成调配决策方案 根据对应机主的农机信息和选择的农田信息生成较优的农机分配方案,实现农机的调配决策。3.2 系统的概要设计3.2.1 开发环境系统开发环境的需求见下表:表3-1 环境需求配置清单开发环境配置需求清单内存

34、1GB以上系统Windows 7开发语言Java开发工具MyEclipse数据库SQL SERVER 2008架构方式三层架构服务器Tomcat 7.0调试浏览器IE浏览器3.2.2系统实现功能目标该系统主要模块包括用户的权限管理和生成调配决策方案,还包括了一些基本资料模块,如机主管理,农户管理,农机管理和农田管理。具体功能设计如下表:表 3-2 系统功能设计表功能分类功能概况具体功能功能说明(可参考需求分析) 主要操作机主信息管理机主信息列表管理员查看农机主的信息列表机主信息新增管理员对农机主信息进行新增操作机主信息修改管理员对农机主的信息进行修改机主信息删除管理员对农机主信息进行删除操作农

35、户信息管理农户信息列表管理员查看农户的信息列表农户信息新增管理员对农户信息进行新增操作农户信息修改管理员对农户的信息进行修改农户信息删除管理员对农户信息进行删除操作农机信息管理农机信息列表管理员和农机主查看农机信息列表农机信息新增管理员和农机主新增农机信息农机信息修改管理员和农机主修改农机信息农机信息删除管理员和农机主删除农机信息农田信息管理农田信息列表管理员和农户和农机主查看农田信息农田信息新增管理员和农户和农机主新增农田信息农田信息修改管理员和农户和农机主修改农田信息农田信息删除管理员和农户和农机主删除农田信息个人信息设置-当前的登陆用户自己基本信息的修改用户登陆-根据数据库中的用户数据,

36、用户在登陆页面输入用户名和密码后登陆系统生成决策分析方案-农机主勾选自己要选择的作业农田信息后根据自己的农机信息生成决策调配方案。注:1:只有管理员可以查看用户(机主和农户)信息。2:只有农机主可以生成农机调配决策方案。3.2.3 系统权限设计角色分类表3-3 角色分类表 角色代码角色TMP管理员 农机主 农 户权限分配表3-4 权限分配表功能概况具体功能1.管理员2.农机主3农户登陆登陆农机调配系统 是 是 是 机主信息管理机主信息列表是 否否机主信息新增是否否机主信息删除是否否机主信息修改是否否机主信息查看是否否农户信息管理农户信息列表是否否农户信息新增是否否农户信息删除是否否农户信息修改

37、是否否农户信息查看是否否农机信息管理农机信息列表是是否农机信息新增是是否农机信息删除是是否农机信息查看是是否农机信息修改是是否农田信息管理农田信息列表是是是农田信息新增是是是农田信息删除是是是农田信息修改是是是农田信息查看是是是决策分析根据农机和农田信息进行分析决策否是否个人信息修改修改个人信息否是是3.2.4 关键功能活动图图3-5 登录模块过程图显示农田的信息选择要作业的农田信息没有被分配请求图3-6 决策分析操作图作业单价农机数量属于机主电话机主地址机主姓名农机ID用户角色农田农田ID农田类型农田成熟时间农田收获时间农田面积农田地址农田ID属于农户ID农户电话农户姓名农户ID农户地址农户

38、农户农田面积3.3 数据库设计3.3.1 E/R设计图3-7 E/R设计图3.3.2 数据库关系图图3-8 数据库关系图3.3.3 数据库表结构表3-9 数据库表结构表YHQXB表:列名属性是否主键完整性约束说明YHIDvarchar(255)是referencesID、登陆IDYHPasswordvarchar(255)否not null密码YHRolevarchar(255)否not null角色JZXXB表:列名属性是否主键完整性约束说明JZIDvarchar(255)是not nullID、登陆IDJZNamevarchar(255)否not null机主姓名JZTelephoneva

39、rchar(255)否无机主联系方式JZAddressvarchar(255)否无机主家庭住址NHXXB表:列名属性是否主键完整性约束说明NHIDvarchar(255)是not nullID、登陆名NHNamevarchar(255)否无农户姓名NHTelephonevarchar(255)否无农户联系方式NHAddressvarchar(255)否无农户家庭地址YYNTAreavarchar(255)否无农户拥有农田面积NJXXB表:列名属性是否主键完整性约束说明idnumeric(19, 0)是not nullIDZYLXvarchar(255)否无作业类型ZYNLvarchar(255

40、)否无作业能力ZYDJvarchar(255)否无作业单价SUJZIDvarchar(255)否references所属机主IDNJSLvarchar(255)否无农机数量NTXXB表:列名属性是否主键完整性约束说明NTIDvarchar(255)是Not null农田IDNTLXvarchar(255)否Not null农田类型ZWCSSJvarchar(255)否无作物成熟时间ZWSHSJvarchar(255)否无作物收获时间NTAreavarchar(255)否无农田面积NTAddressvarchar(255)否无农田地址SSNHIDvarchar(255)否references所属

41、农户IDdistancevarchar(255)否无与机主的距离4 系统实现本章详细介绍了各主要模块的实现原理,在介绍过程中详细分析了实现的实现代码。4.1 数据库操作模块的实现本系统采用三层架构模式开发,分为界面层,逻辑层与数据层。系统在操作过程中需要频繁查询或者更改信息,所以系统的实现过程中需要多次对数据库进行操作,而在对数据库进行操作之前必须进行数据库连接。如果每一部分都单独编写数据库连接代码,将造成代码的冗余,同时降低了系统的可维护性。为此本系统将数据库连接参数写进配置文件applicationContext.xml,并且利用Hibernate对数据库操作的封装特性,通过配置sessi

42、onFactory直接对数据库进行操作。具体如下所示:配置文件:configapplicationContext.xml 为了便于数据库信息的管理,对于数据库链接信息的管理存储在配置文件config/jdbc.properties中,若需更改数据库链接信息直接修改配置文件中的信息即可:jdbcUrl= jdbc:jtds:sqlserver:/localhost:1433;DatabaseName=NJDPdriverClass= net.sourceforge.jtds.jdbc.Driveruser= liuyangpassword= 12244.2 登录模块的实现登录过程中由Web层登录

43、界面将用户名和密码传给Service层,Service层根据得到的信息调用DAO层的GetModel()方法,并得到返回的User对象,然后将此对象再返回给Web层。最后由Action中的Login()方法判断是否登录成功,根据登陆是否成功并且返回相应的页面,并根据登陆用户的角色实现权限功能的分配。由于本系统涉及管理员、农机主和农户三种角色,根据登陆用户的角色代码,判断应该分配给用户的权限,并实现不同角色的功能分配和页面跳转,并将用户的信息存入session,向系统后期的操作提供信息。登录的实现代码如下:/cn/edu/njdpxt/view/action/UserAction.java/*

44、*登陆 */public String login() throws ExceptionSystem.out.println(model.getYHID()+-+model.getYHPassword();User user = userService.findByYHIDAndYHPassword(model.getYHID(),model.getYHPassword();if(user = null)addFieldError(login, 用户名或密码不正确!);return loginUI;else/登陆用户ActionContext.getContext().getSession()

45、.put(user, user);return toIndex;4.3 权限控制模块的实现权限控制的实现主要是在登录成功后,根据返回的管理员对象,判断所属的角色,然后进行相应的跳转,跳转详情见下表。角色分类跳转地址1管理员(T)User_login.action2农机主(M)User_login.action3农 户(P)User_login.action实现代码如下:/WEB-INF/jsp/homeAction/left.jsp导航菜单function menuClick( menu )$(menu).next().toggle();机主信息管理 查询机主信息 插入新的机主信息 农机信息管理 查询农机信息

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!