基于ssh的宠物管理系统的设计与实现本科毕业论文_第1页
基于ssh的宠物管理系统的设计与实现本科毕业论文_第2页
基于ssh的宠物管理系统的设计与实现本科毕业论文_第3页
基于ssh的宠物管理系统的设计与实现本科毕业论文_第4页
基于ssh的宠物管理系统的设计与实现本科毕业论文_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于SSH的宠物管理系统设计与实现 基于SSH的宠物管理系统设计与实现 摘要二十一世纪是一个集数字化,网络化,信息技术为一体,以网络为中心的社会。中国网民充分领略“畅游天际间,网络无极限所带来的乐趣。随着互联网的飞速开展,网络应用日益广泛。如电子商务,电子政务,医疗,网上娱乐,网上游戏,网络教学等。在宠物管理系统的设计过程中结合运用了SSH技术,实现一套适合中小型社区管理宠物的系统。宠物管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据平安性好的数据库。而对于后者那么要求应用程序具有功能完备,易使用等特

2、点。经过分析,我们使用 Java平台作为开发环境,后台采用MySQL数据库,经历了一个比拟完整的开发过程。本系统界面简单,直观,易于操作和使用,完全基于互联网的互动性。首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改良,直到形成满意的可行系统。最后,采用用例方法对系统进行了测试,保证了系统的可用性。本篇论文就毕业设计的内容,系统地阐述了整个宠物管理系统的功能的设计和实现。关键词:宠物管理,Java语言,MySQL数据库,SSH框架THE DESIGN AND DEVELOPMENT OF THE PET MANAGEMENT SYSTEMABSTRACTThe 2

3、1st century is a set of digital, networked, information technology, to network-centric society. Internet users in China to fully appreciate the swim between heaven and earth, the network has no limit to bring the fun. With the rapid development of Internet, the increasingly wide range of network app

4、lications. Such as e-commerce, e-government, healthcare, online entertainment, online games, network teaching. The design process of pet management system combined with the use of the SSH technology, to achieve a suitable system of small and medium-sized community-based management of pets. Pet manag

5、ement system is a typical information management system, its development include two parts of the establishment and maintenance of the back-end database and application development of front-end. For the former requirement to establish consistency and integrity, good security database. For the latter

6、 requires the application has a fully functional, and easy to use. After analysis, we use the Java platform as a development environment, MySQL database as back-end, has experience a complete development process.The system interface is simple, intuitive, easy to operate and easy to use, fully based

7、on the interaction of Internet.First in a short time to establish a system application demand for iterative prototype, and then, the initial prototype system, constantly revised and improved until a satisfactory viable system. Finally, using the use case method to test the system , and to ensure the

8、 availability of the system. In this thesis, graduate design, systematically expounds the design and implementation of the function of the entire pet management system in the contents of the graduate design.Key words: Pet management, Java language, MySQL database, SSH frame目录 TOC o 1-3 h z u HYPERLI

9、NK l _Toc326167709 1绪论 PAGEREF _Toc326167709 h 3 HYPERLINK l _Toc326167710 1.1 课题开发背景 PAGEREF _Toc326167710 h 3 HYPERLINK l _Toc326167711 1.2 课题研究现状 PAGEREF _Toc326167711 h 3 HYPERLINK l _Toc326167712 1.3 课题研究内容 PAGEREF _Toc326167712 h 3 HYPERLINK l _Toc326167713 1.4 本文组成结构 PAGEREF _Toc326167713 h 3

10、 HYPERLINK l _Toc326167714 2关键技术介绍 PAGEREF _Toc326167714 h 3 HYPERLINK l _Toc326167715 2.1 MVC模式 PAGEREF _Toc326167715 h 3 HYPERLINK l _Toc326167716 2.2 SSH框架 PAGEREF _Toc326167716 h 3 HYPERLINK l _Toc326167717 2.3 Struts2 简介 PAGEREF _Toc326167717 h 3 HYPERLINK l _Toc326167718 2.4 Spring 简介 PAGEREF

11、_Toc326167718 h 3 HYPERLINK l _Toc326167719 2.5 Hibernate简介 PAGEREF _Toc326167719 h 3 HYPERLINK l _Toc326167720 2.6 Jsp技术简介 PAGEREF _Toc326167720 h 3 HYPERLINK l _Toc326167721 2.7 MySQL简介 PAGEREF _Toc326167721 h 3 HYPERLINK l _Toc326167722 2.8 B/S结构 PAGEREF _Toc326167722 h 3 HYPERLINK l _Toc32616772

12、3 2.9 本章小结 PAGEREF _Toc326167723 h 3 HYPERLINK l _Toc326167724 3 系统需求分析 PAGEREF _Toc326167724 h 3 HYPERLINK l _Toc326167725 3.1 任务概述 PAGEREF _Toc326167725 h 3 HYPERLINK l _Toc326167726 3.2 用户特点 PAGEREF _Toc326167726 h 3 HYPERLINK l _Toc326167727 3.3宠物管理系统功能需求 PAGEREF _Toc326167727 h 3 HYPERLINK l _T

13、oc326167728 3.4 宠物管理系统界面需求 PAGEREF _Toc326167728 h 3 HYPERLINK l _Toc326167729 3.5 宠物管理系统操作需求 PAGEREF _Toc326167729 h 3 HYPERLINK l _Toc326167730 3.6 宠物管理系统的其他需求 PAGEREF _Toc326167730 h 3 HYPERLINK l _Toc326167731 3.7 本章小结 PAGEREF _Toc326167731 h 3 HYPERLINK l _Toc326167732 4 宠物管理系统设计 PAGEREF _Toc32

14、6167732 h 3 HYPERLINK l _Toc326167733 4.1 宠物管理系统功能设计目标 PAGEREF _Toc326167733 h 3 HYPERLINK l _Toc326167734 4.2 宠物管理系统的总体设计 PAGEREF _Toc326167734 h 3 HYPERLINK l _Toc326167735 4.3 系统详细功能设计以及总体结构图 PAGEREF _Toc326167735 h 3 HYPERLINK l _Toc326167736 4.4 数据库结构设计 PAGEREF _Toc326167736 h 3 HYPERLINK l _To

15、c326167737 4.5系统的用例图 PAGEREF _Toc326167737 h 3 HYPERLINK l _Toc326167738 4.5.1 总体用例分析 PAGEREF _Toc326167738 h 3 HYPERLINK l _Toc326167739 4.5.2 用户管理用例分析 PAGEREF _Toc326167739 h 3 HYPERLINK l _Toc326167740 宠物,宠物类别及宠物监管人管理 PAGEREF _Toc326167740 h 3 HYPERLINK l _Toc326167741 留言板管理 PAGEREF _Toc326167741

16、 h 3 HYPERLINK l _Toc326167742 文档管理 PAGEREF _Toc326167742 h 3 HYPERLINK l _Toc326167743 4.6 系统出错处理设计 PAGEREF _Toc326167743 h 3 HYPERLINK l _Toc326167744 4.7 本章小结 PAGEREF _Toc326167744 h 3 HYPERLINK l _Toc326167745 5 宠物管理系统的实现 PAGEREF _Toc326167745 h 3 HYPERLINK l _Toc326167746 5.1开发环境 PAGEREF _Toc32

17、6167746 h 3 HYPERLINK l _Toc326167747 5.2 宠物管理系统数据库的实现 PAGEREF _Toc326167747 h 3 HYPERLINK l _Toc326167748 5.3 宠物管理系统功能说明 PAGEREF _Toc326167748 h 3 HYPERLINK l _Toc326167749 5.4主要的宠物信息管理的实现 PAGEREF _Toc326167749 h 3 HYPERLINK l _Toc326167750 5.4.1 DAO层的实现 PAGEREF _Toc326167750 h 3 HYPERLINK l _Toc32

18、6167751 5.4.2 Service层的实现 PAGEREF _Toc326167751 h 3 HYPERLINK l _Toc326167752 5.4.3 Action层的实现 PAGEREF _Toc326167752 h 3 HYPERLINK l _Toc326167753 5.4.4 静态Jps页面的实现表现层 PAGEREF _Toc326167753 h 3 HYPERLINK l _Toc326167754 5.5实现效果图 PAGEREF _Toc326167754 h 3 HYPERLINK l _Toc326167755 5.6其余模块的功能说明以及效果截图 P

19、AGEREF _Toc326167755 h 3 HYPERLINK l _Toc326167756 5.6.1 用户登入注册,管理员管理用户模块 PAGEREF _Toc326167756 h 3 HYPERLINK l _Toc326167757 5.6.2 用户留言,管理员查看留言模块 PAGEREF _Toc326167757 h 3 HYPERLINK l _Toc326167758 5.6.3 用户查看相关文章,管理员管理相关文章模块 PAGEREF _Toc326167758 h 3 HYPERLINK l _Toc326167759 5.7本章小结 PAGEREF _Toc32

20、6167759 h 3 HYPERLINK l _Toc326167760 6 软件安装与调试 PAGEREF _Toc326167760 h 3 HYPERLINK l _Toc326167761 6.1 软件的安装与配置 PAGEREF _Toc326167761 h 3 HYPERLINK l _Toc326167762 6.2 软件调试 PAGEREF _Toc326167762 h 3 HYPERLINK l _Toc326167763 6.3 软件测试 PAGEREF _Toc326167763 h 3 HYPERLINK l _Toc326167764 6.4 小结 PAGERE

21、F _Toc326167764 h 3 HYPERLINK l _Toc326167765 7 结论 PAGEREF _Toc326167765 h 3 HYPERLINK l _Toc326167766 参考文献 PAGEREF _Toc326167766 h 3 HYPERLINK l _Toc326167767 致谢 PAGEREF _Toc326167767 h 3翻译 HYPERLINK l _Toc326167767 原文及译文 PAGEREF _Toc326167767 h 3绪论1.1 课题开发背景在科学技术飞速开展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在

22、人们政治、经济、生活等各个方面发挥着重要的作用,人们的生活方式也因网络技术的不断开展而改善。由于物质生活的提高,人们开始越来越注重精神层面的享受,不少家庭都拥有自己独特的一员:宠物。宠物在人们的生活起到了很重要的作用,对一局部人来说,或许宠物是一个不可替代的角色。因为宠物有时是人类情感抒发的一个对象,是人们心灵的一个寄托,所以人们对宠物的需求也逐渐增大了。但是由于家养宠物的变多,管理起来也比拟麻烦,所以做个上海市的宠物管理系统便于宠物监管人的浏览以及宠物管理人员的管理是十分必要的。近期,社区关于宠物的讨论较多。很多人已经发现,我们身边的流浪宠物越来越多,其中约80%为流浪猫,它们大多是被主人遗

23、弃,流落街头。据报道目前上海市区的流浪宠物已经超过了70万只,对环境、交通和我们的日常生活构成严重隐患,而其他地区流浪宠物的数量也在激增。我国的动物管理正处于起步阶段,注册在线的宠物数量非常有限,信息也很封闭,因此必须发挥民间力量扩大收容,加强宠物信息的宣传力度,使更多保护动物的好心人可以领养宠物,同时也收纳有家宠物的信息,以防宠物丧失,恶性伤人等事件的发生。由此看来,建立一个标准化、科学化的宠物交流平台是非常有必要的。随着计算机技术的飞速开展,利用计算机在实现宠物管理业务的管理势在必行。当今社会正快速向信息化社会前进,信息自动化的作用也越来越大。从而使我们从繁杂的事务中解放出来,提高了我们的

24、工作效率。目前很多宠物管理的管理还处于人工管理的阶段,效率低下,已经远远落后于当今技术的开展。并且人工管理的弊端也愈来愈严重,由于不可防止的人为因素,造成数据的遗漏、误报,而造成一定的损失的事例层出不穷。计算机信息化管理有着储存信息量大,速度快等许多优点,提供给我们的处理信息及时快捷,同时也提高了我们工作人员的自身素质。因此我们利用计算机提供给我们信息,做出了这个宠物管理系统。宠物管理系统是现在宠物管理工作不可缺少的一局部,是适应现在宠物管理业务制度的要求。推动宠物管理走向科学化、标准化的必要条件。传统的办公模式主要以纸介质为主,在信息革命的浪潮中,显然已经远远不能满足高效率、快节奏的现代工作

25、和生活的需要。如何实现信息处理的自动化和办公的无纸化逐步得到了人们的重视。如今,随着计算机技术的普及人们开始采用MIS,它是集计算机技术、网络通信技术为一体的信息系统工程,能使学校运行的数据更加准确、及时、全面、详实,同时对各种信息进一步地加工,使领导层对宠物管理的决策依据更充分,更具有合理性科学性,并创造出更多的开展时机;另外也进一步加强学校的科学化、合理化、制度化、标准化管理,为管理水平跨上新台阶,为持续、健康、稳定的开展打下根底。MIS是一门新的学科,它跨越了假设干个领域,比方管理科学、系统科学,运筹学、统计学以及计算机科学。在这些学科的根底上,形成信息收集和加工的方法,从而形成一个纵横

26、交织的系统。在强调管理,强调信息的现代社会中它变得越来越普及。目前国内使用和开展的MIS平台模式大体分两种:客户机/效劳器C/S模式和Web浏览器/效劳器B/S模式。本文主要介绍一个简单的基于B/S模式的学校 宠物管理报修系统的实现,系统开发的总体业务是实现学校宠物管理业务信息关系的系统化、标准化和自动化。本论文主要涉及软件,数据库与网络技术等。涵盖知识面广,可有效地提高学生综合运用所学知识分析解决问题的能力,增强学生对事物的理解与掌握能力,培养学生掌握科学的研究方法,正确的设计思想,独立思考,勇于进取,探索创新,为今后进一步学习与工作奠定了良好的根底。1.2 课题研究现状随着人们生活水平的提

27、高,各种各样的宠物开始在千家万户出现,越来越多的市民把饲养宠物视为自己家庭生活的一个重要局部。人们饲养宠物的出发点已不再是以前的养狗是为了看家护院,养猫是为了捉拿耗子,更多的人视宠物为平日玩耍、取乐的对象,是自己寂寞消遣的伴侣。但是,随着宠物热的兴起,也给人们的日常生活带来了诸多麻烦和不便。首先是流浪宠物伤人事件屡屡发生。流浪宠物居无定所无人看管,一不小心就会造成狗伤行人的事件,而且此类事件与日俱增。据卫生部通报:2001年全国人间狂犬病发病891例,死亡854例;2002年发病1122例,死亡1003例;2003年发病2037例,死亡1980例;今年上半年发病1038人,死亡842人。狂犬病

28、对人的致死率高达94.7%以上,且发病和死亡呈逐年上升趋势。同时,大大增加人与人之间的矛盾,引起医药费等索赔的纠纷不断。因此,宠物管理势在必行。其次是宠物粪便和死尸等造成严重的环境污染。据了解,流浪宠物的实体和粪便很多时候是有环卫工人处理,无形中加重了环卫工人的负担。我国并无转业的动物尸体处理设施,也没有专门的动物掩埋场所,再次是宠物传染病威胁人类健康,如寄生虫病、狂犬病等。2007年4月卫生部公布全国法定传染病疫情报告中指出,死亡数居前五位的病种为:狂犬病、肺结核、艾滋病、乙肝和流脑,其中狂犬病居首。最后是宠物鸣叫干扰居民休息,影响他人正常生活。可见,流浪宠物管理是一个亟待解决的问题。这使得

29、对开发上海市宠物系统的技术要求更高了。传统的基于JSP,Servlet以及JavaBean技术所开发的系统扩展能力不强,不能够满足人们快速增长的需求,并且显示页面有时要进行逻辑处理,降低了运行效率。此外,对数据库的处理往往较复杂,特别是与数据库的连接浪费了大量的时间。这使得使用SSH这三个开源框架的优点被很好的表达出来了。开源框架的设计思路是将整个系统的实现分为三层:表现层、业务逻辑层、持久层。表现层主要是负责前台的显示,业务逻辑层主要负责处理业务逻辑以及页面的转向,持久层主要负责后台与数据库的连接以及交换数据。这样大大增加了系统的扩展性,能够即使的调整系统功能来满足用户的需求;使得结构更加严

30、谨,每层完成指定的任务,减轻显示页面的工作量,增加了它们的执行效率。此外增加了持久层,也就增加了更多的平安性。1.3 课题研究内容本系统主要是为用户提供一个网上交流宠物信息的平台,也为社区宠物的管理员提供一个方便管理,记录宠物信息数据的平台。用户可以在该平台上浏览查看宠物的信息以及相关资料,还可以在留言板中留下自己的意见及建议。而管理人员能方便的收集,修改社区宠物的各种数据,听取用户的意见,以到达更好的管理社区内宠物的目的。本系统使用SSH框架进行开发,SSH对视图层、控制层、业务逻辑层、持久化层提供了全面的支持,已经广泛应用于各种系统的开发。系统的开发环境是MyEclipes 9.0,数据库

31、使用MySQL Server 5.5,效劳器使用Tomcat 7.x。1.4 本文组成结构本文摘要简述了本文重点讲述内容。第一章交代了选择该课题的开发背景,研究现状以及研究内容。第二章展示了本课题所使用到的关键技术,SSH框架 (Struts2+ Spring + Hibernate),JSP技术,以及MySQL数据库跟B/S结构等。第三章对该系统做出了需求分析。说明了制作该系统的任务概要,使用该系统的用户的用户特点并将系统的功能需求,界面需求,操作需求以及其他需求一一介绍。第四章对宠物管理系统做出了详细的设计,从功能设计,到数据库设计,然后给出了系统的功能结构图,er图,以及系统用例图,最后

32、提及了用户输入出错的设计。第五章详细表达了系统的实现,主要开发系统的搭建,举例给出了宠物管理模块的实现过程,给出了其数据库的设计以及其业务控制的主要代码和其连接其Struts,Hibernate,Spring的配置代码,并且给出了主要功能实现的截图。第六章浅谈了软件的安装,测试与调试。第七章自我评价,总结了平安性以及有待改良的地方。其后是参考文献,以及感谢。关键技术介绍本章全面介绍本系统所用到的关键技术, SSH(Struts+Spring+Hibernate)作为本系统的核心与亮点技术,更是作了详细介绍,要掌握他们的工作原理,主要功能。然后介绍了本系统使用的页面Jsp以及数据库MySQL还有

33、B/S模式。只有掌握了这些技术根底,才能使本系统的开发正常进行。2.1 MVC模式MVC是三个单词的缩写,分别为: 模型(Model),视图(View) 和控制Controller)。 MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映 射为模型层可执行的操,如图2-1所示:图2-1 MVC模式工作原理图MVC是一个设计模式,它

34、强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。分层概念。视图是用户看到并与之交互的界面。模型表示企业数据和业务规那么。控制器接受用户的输入并调用模型和视图去完成用户的需求。2.2 SSH框架SSH 为 Struts+Spring+Hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体根底架构,负责MVC的别离,

35、在Struts框架的模型局部,利用Hibernate框架对持久层提供支持,业务层用Spring支持。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为根本的Java对象,然后编写根本的DAO接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring完成业务逻辑。系统的根本业务流程是: 在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件 (struts-config.xml)将ActionServlet接收到

36、的Request委派给相应的Action处理。在业务层中,管理效劳组件的 Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件 以提升系统性能和保证数据的完整性。而在持久层中,那么依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。Struts、Spring、Hibernate的关系如图2-2所示:图2-2 Struts、Spring、Hibernate关系图2.3 Struts2 简介Struts 2是Struts的下一代产品,是在 struts

37、和WebWork的技术根底上进行了合并的全新的Struts 2框架。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。 Struts 2框架本身大致可以分为3个局部:核心控制器StrutsPrepareAndExecuteFilter、业务控制器Action和用户实现的企业业务逻辑组件。其工作原理如图2-3所示。图2-3 Struts2工作原理图核心控制器StrutsPrepareAndExecuteFilterFilterDispatcher是

38、早期Struts2的过滤器,后期的都用StrutsPrepareAndExecuteFilter了。 StrutsPrepareAndExecuteFilter名字已经很能说明问题了,prepare与execute,前者表示准备,可以说是指filter中的init方法,即配制的导入;后者表示进行过滤,指doFilter方法,即将request请求,转发给对应的 Action去处理。核心控制器执行读取静态数据信息,决定需要转发或者导航的Action配置,创立Action的Context,创立Action代理,内存清理和性能优化等操作。而Interceptor拦截器本身是一个普通的Java对象,它

39、能动态拦截Action调用,在Action执行前后执行拦截器本身提供的各种各样的Web工程需求,也可以阻止Action的执行,同时也可以提取Action中可以复用的局部。主要作用为:在Action调用之前提供系统处理流程逻辑控制,和Action交互时,提供Ation执行时的一些初始信息,在Action结束后,一些事后的处理流程逻辑,修改Action中返回的Result信息,捕获异常。如果自己定义过滤器的话,是要放在Strtus2的过滤器之前的,如果放在Struts2过滤器之后,自己的过滤器对Action的过滤作用就废了不会有效,除非是访问Jsp/Html。用FilterDispatcher是无

40、法做到使用Action的环境,而又在执行Action之前拿filter做一些事的,而StrutsPrepareAndExecuteFilter可以把他拆分成StrutsPrepareFilter和StrutsExecuteFilter,可以在这两个过滤器之间加上我们自己的过滤器。业务控制器Action业务控制器Action是由开发者自己编写实现的,Action类可以是一个简单的Java类,与Servlet API完全别离。Action一般都有一个execute()方法,也可以定义其他业务控制方法。Action的execute()返回一个String类型值。Struts 2提供了一个Action

41、Support工具类,该类实现了Action接口和validate()方法,一般开发者编写Action可以直接继承ActionSupport类。编写Action类后,开发者还必须在配置文件中配置Action。一个Action的配置应该包含下面几个元素:1、该Action的name,即用户请求所指向的URL。2、Action所对应的class元素,对应Action类的位置。3、指定result逻辑名称和实际资源的定位。Action是业务控制器,在编写Action的时候,尽量防止将业务逻辑放到其中,尽量减少Action与业务逻辑模块或者组件的耦合程度。业务模型组件业务模型组件可以是实现业务逻辑的模

42、块,可以是EJB、POJO或者JavaBean,在实际开发中,对业务模型组件的区分和定义也是比拟模糊的,实际上也超出了Struts 2框架的范围。不同的开发者或者团队,都有自己的方式来实现业务逻辑模块,Struts 2框架的目的就是使用Action来调用业务逻辑模块。视图组件Struts 2可以使用Jsp以及其他视图技术,如FreeMarker、Velocity等。Action的返回结果只是一个简单的字符串,也就是一个逻辑上的视图名称,要与实际视图资源对应,必须通过配置文件来实现。在struts.xml配置文件中,每一个Aciton定义都有name和class属性,同时还要指定result元素

43、。result元素指定了逻辑视图名称和实际视图的对应关系。每个result都有一个type属性,struts.xml中并没有显式指定type值,即使用了默认的type类型,该结果类型支持Jsp所谓视图资源。Struts2的配置文件类型Struts2共有4类配置文件。perties:定义框架自身的全局变量。struts-default.xml:定义框架自身使用的Action映射及result定义。struts-plugin.xml:struts插件使用的配置文件,比方当使用Struts和Spring结合时就需要在web.xml中引用该配置文件。struts.xml:定义应用自

44、身使用的Action映射及result定义;当然我们一般将应用的各个模块分不到不同的配置文件中。框架中所使用的组件ActionServlet 控制器,ActionClass 包含事务逻辑,ActionMapping 帮助控制器将请求映射到操作,ActionForward 用来指示操作转移的对象,ActionError 用来存储和回收错误,Struts标记库 可以减轻开发显示层次的工作。2.4 Spring 简介Spring 是一个开源框架,是为了解决企业应用程序开发复杂性由Rod Johnson创立的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应

45、用程序开发提供集成的框架。Spring使用根本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于效劳器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring根本框架Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创立、配置和管理 bean 的方式,如图2-4所示:组成Spring框架的每个模块或组件都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下:1、核心容器:核心容器提供 Spring 框架的根本功能。核心容器的主要组件

46、是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转IOC 模式将应用程序的配置和依赖性标准与实际的应用程序代码分开。2、Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业效劳,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。3、Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对

47、象提供了事务管理效劳。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。4、Spring DAO:JDBC DAO抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供给商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量例如翻开和关闭连接。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。5、Spring ORM:Spring 框架插入了假设干个 ORM框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatisSQL Map。所有

48、这些都遵从 Spring 的通用事务和 DAO 异常层次结构。6、Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多局部请求以及将请求参数绑定到域对象的工作。7、Spring MVC 框架:MVC框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,本系统主要应用的是 JSP。Spring 框架的功能可以用在任何 J2EE 效劳器中,大多数功能也适用于不受管

49、理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE 效劳的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同J2EE 环境Web 或EJB、独立应用程序、测试环境之间重用。图2-4 spring根本框架图Spring工作原理Spring内部最核心的就是IoC(Inversion of Control): 控制反转,动态注入,让一个对象的创立不用new了,可以自动的生产,这其实就是利用Java里的反射,反射其实就是在运行时动态的去创立、调用对象,Spring就是在运行时,跟Spring 的配置文件来动态的创立对象,调用对象里的方法的。IoC控制权由对象本身转向容器;由容器根据

50、配置文件去创立实例并创立各个实例之间的依赖关系核心:bean工厂;在Spring中,bean工厂创立的各个实例称作bean。Spring还有一个核心就是AOP(Aspect-Oriented Programming): 面向方面编程,可以为某一类对象 进行监督和控制也就是在调用这类对象的具体方法的前后去调用你指定的 模块从而到达对一个模块扩充的功能。这些都是通过配置类到达的。2.5 Hibernate简介Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使

51、用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。其体系结构概要如图2-5以及图2-6所示。Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。这6个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这6个核心接口分别加以介绍。 Session接口 Session接口负责

52、执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程平安的。同时,Hibernate的session不同于JSP应用中的 Session。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将 Session对象称为用户session。 SessionFactory接口SessionFactory接口负责初始化Hibernate。它充当数据存储源代理,并负责创立Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况

53、下,一个工程通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。Configuration接口Configuration接口负责配置并启动Hibernate,创立SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创立SessionFactory对象。Transaction接口 Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。Query和Criteria接口Query和Crite

54、ria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。图2-5 Hibernate体系结构概要图图2-6 Hibernate体系结构概要图2 Hibernate的工作就是为Object和Ralational之间提供一个映射,其工作流程如下面的图2-7所示。图2-7 Hibernate工作流程图Hibernate可以通过一个XML的mapping文件把一个POJOPlain old java object和数据库中的表对应起来,在这个XML文件一般命名为*.hbm.xml中,我们可以配置好Object和数据库中标的映射关系,然后把这个mapping参加到中,这样Hibe

55、rnate在启动时就可以加载这些mapping,并可以根据配置文件对对象实现自动的加载,并且可以对这些Object实习自动的维护。Hibernate还提供查询语句HQL供给用程序使用,Hibernate对数据访问实现封装,还可以对查询语句的发送实现管理,到达优化的目的,能够有效减少数据库的访问频率。2.6 Jsp技术简介Jsp(Java Server Page效劳器网页)是从1998年开始出现的新技术。由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准,是基于JavaServlet以及整个Java体系的Web开发技术。在传统的网页HTML文件(*.htm,*.html)中参加脚本片段

56、和Jsp标记(Tag),构成Jsp网页(*.jsp)。Jsp技术为创立显示动态生成内容的Web页面提供了简便的方法。Jsp作为Java家族的一员,承袭了Java的特点,即跨平台的特性,也即一次编译,到处运行。在国外,己经大量使用Jsp作为网络应用程序的开发工具,而在国内,尽管Jsp还不是主流开发技术,但是由于Jsp的强大优势,许多网站都已经准备转向Jsp,利用Jsp来开发动态网站。 2.7 MySQL简介MySQL 应用概述MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL“结构化查询语言。

57、SQL是用于访问数据库的最常用标准化语言。MySQL软件采用了GPLGNU通用公共许可证。由于其体积小、速度快、总体拥有本钱低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有本钱而选择了MySQL作为网站数据库。MySQL的优势使用了多种编译器进行测试,保证源代码的可移植性。支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OS/2 Wrap、Solaris、Windows等多种操作系统。为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby等。支持多线程,充分利用CPU资

58、源。优化的SQL查询算法,有效地提高查询速度。提供TCP/IP、ODBC和JDBC等多种数据库连接途径。提供用于管理、检查、优化数据库操作的管理工具。可以处理拥有上千万条记录的大型数据库。2.8 B/S结构B/S结构Browser/Server结构结构即浏览器和效劳器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改良的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少局部事务逻辑在前端Browser实现,但是主要事务逻辑在效劳器端Server实现,形成三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的本钱和工作量,降低了用户的总体本钱

59、TCO。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、本钱也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式比方LAN,WAN,Internet/Intranet等访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,效劳器数据库也很平安。特别是在Java这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。图2-8显示了B/S模式的三层结构。图2-8 B/S模式三层结构图2.9 本章小结本章节主要介绍了本宠物管理系统所需要使用的技术,为后面的设计以及开发做准备。3 系

60、统需求分析3.1 任务概述本宠物系统主要是为用户提供一个网上交流宠物信息的平台,也为社区宠物的管理员提供一个方便管理,记录宠物信息数据的平台。用户可以在该平台上浏览查看宠物的信息以及相关资料,还可以在留言板中留下自己的意见及建议。而管理人员能方便的收集,修改社区宠物的各种数据,听取用户的意见,以到达更好的管理社区内宠物的目的。3.2 用户特点注册用户:宠物管理系统的前台使用者,各种宠物信息的浏览者,权限受限制。管理员:宠物管理系统的后台使用者,网站的管理者,数据的修改,删除,调用者,权限不受限。3.3宠物管理系统功能需求根据对我居住的社区的宠物调查,宠物管理系统的用户需求主要包括系统的游客主要

温馨提示

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

评论

0/150

提交评论