11210119傅琛坤毕业论文正文.docx
《11210119傅琛坤毕业论文正文.docx》由会员分享,可在线阅读,更多相关《11210119傅琛坤毕业论文正文.docx(31页珍藏版)》请在冰豆网上搜索。
11210119傅琛坤毕业论文正文
本科毕业设计(论文)
(2015届)
题目:
基于J2EE实验基地门户网站
的设计与开发
学院:
数理与信息工程学院
专业:
软件工程
学生姓名:
傅琛坤学号:
11210119
指导教师:
李旻朔职称:
讲师
完成时间:
2015年3月20日
浙江师范大学本科毕业设计(论文)正文
目录
1前言-2-
1.1研究背景与研究意义-2-
1.2当前现状-3-
1.3前景展望-3-
1.4研究内容-3-
2相关技术介绍-3-
2.1J2EE平台-4-
2.1.1J2EE三层结构-4-
2.1.2J2EE平台中包含多种技术规范-4-
2.1.3J2EE优势-5-
2.2MVC模式-5-
2.2.1MVC模式核心概念-5-
2.2.2MVC模式图示-5-
2.2.3MVC优点-6-
2.3Struts2框架-6-
2.3.1Struts2框架工作原理-7-
2.3.2Struts2优点-7-
2.4Hibernate技术-7-
2.4.1Hibernate框架原理-7-
2.4.2Hibernate编程步骤-8-
2.4.3Hibernate优点-8-
3系统分析-8-
3.1系统可行性分析-8-
3.1.1技术可行性分析-8-
3.1.2社会经济可行性分析-9-
3.1.3项目主要风险分析-9-
3.2需求分析-9-
3.2.1功能需求-9-
3.2.2功能设计-10-
图3-2普通成员/游客流程图-11-
3.2.3性能需求-12-
4系统概要设计-12-
4.1系统用例图-12-
4.1.1后台系统用例图-12-
4.1.2前台系统用例图-13-
4.2网站架构设计-13-
4.3网站结构-14-
5系统详细设计-14-
5.1数据库设计-15-
5.1.1管理员表设计-15-
5.1.2网站联系人表设计-15-
5.1.3网站新闻表设计-15-
5.1.4新闻类型表设计-16-
5.1.5项目展示表设计-16-
5.1.7通知表设计-17-
5.2功能模块设计-18-
5.2.1后台管理登陆模块-18-
5.2.2后台管理模块-18-
5.2.3前台主页模块-19-
5.2.4项目上传模块-19-
6项目部署-20-
6.1JDK安装-20-
6.2Tomcat服务器-20-
6.3Mysql数据库-20-
7项目评价-21-
7.1项目优点-21-
7.2项目不足之处-21-
8总结-21-
参考文献-22-
基于J2EE实验室门户网站的设计与开发
数理与信息工程学院软件工程傅琛坤(11210119)
指导老师:
李旻朔(讲师)
摘要:
实验室是高校进行科研,培养学生实践动手能力,将所学知识应用于实际,也是学生提高自身实践能力,将所学知识融会贯通的最佳场所。
因此必须重视实验室的建设和管理,尽可能的发挥实验室的作用,将资源更加有效合理的利用起来。
目前,网络化教学普及全球,浙江师范大学开放实验室在建设和管理上,也面临着许多新问题和新挑战,如教学资源缺少使用者而浪费,而有些资源紧缺,资源不共享,缺乏管理。
实验室信息较闭塞,所以很多同学对开放实验室了解有限,对实验室的特色实验也了解有限。
本次设计针对存在的问题,以浙江师范大学开放实验室门户网站的需求为根据,采用基于J2EE平台,MVC模式、Struts2框架,设计开发了浙江师范大学实验室门户网站,网站主要功能包括:
实验室信息的发布,包括热点资讯新闻,实验室信息介绍,实验室成员介绍;方便管理员与实验室成员的交流沟通;实验室成员通过该网站查看实验室相关信息,并进行实验交流沟通,修改实验室相关信息,也可以进行实验室管理员的维护等操作。
同时向外界展示实验室成员风采以及实验室成员的学习劳动成果,并对外界接一些项目,以增强实验室成员实践能力。
开放实验室门户网站的开发,方便了实验室成员级外界人士对实验室信息浏览,提高了实验室管理员对实验室的管理能力。
该网站的使用可以有效的整合、管理现有实验室资源,促进浙江师范大学开放实验室的信息化建设,提高了实验室管理员对实验室管理的能力。
关键词:
实验室门户网站;J2EE平台;MVC模式;Struts2框架
Designanddevelopmentofthelaboratoryportalwebsite BasedontheJ2EE
FuChen-kun(11210119)Director:
LiMin-shuo
SoftwareEngineering,mathematicsandInformationEngineeringCollege(nonnormal)professional
Abstract:
Incollegesanduniversitieslaboratoryisforscientificresearch,raisesthestudentpracticeabilityandapplyingknowledgetopractice,andstudentstoimprovetheirpracticalability,theknowledgeinthebestplacetoachievemasterythroughacomprehensivestudy.Thereforemustattachimportancetotheconstructionandmanagementoflaboratory,asfaraspossibleplaytotheroleofthelaboratory,willbemoreeffectiveandreasonableutilizationofresources.Atpresent,thenetworkedteachingglobalpopularity,zhejiangnormaluniversityinopenlaboratoryconstructionandmanagement,isfacedwithmanynewproblemsandnewchallenges,suchaslackofteachingresourcesusersandwaste,andsomeoftheshortageofresources,resourcessharing,thelackofmanagement.Laboratoryinformationmoreisolated,somanystudentsknowabouttheopenlaboratoryislimited,tounderstandthefeaturesoflaboratoryexperimentalsolimited.
Thisdesigninviewoftheexistingproblems,openlaboratoriesinzhejiangnormaluniversitybasedontheneedsoftheportal,basedontheJ2EEplatform,theMVCpattern,theStruts2framework,designanddevelopmentofzhejiangnormaluniversitylaboratoryportalwebsite,websitemainfeaturesinclude:
laboratoryinformationrelease,includinghotnewsinformation,laboratoryinformationisintroduced,labmembers;Convenientadministratorwithlabmembersofcommunication;Labmembersseelaboratoryinformationthroughthissite,andcommunicationexperiment,modifythelabinformation,alsocanundertakethemaintenanceoflabmanager.Atthesametimetoshowthelabmembersandmembersofthelaboratoryworkoflearning,andpickupsomeprojectstotheoutsideworld,toenhancethecapacityofmembersofthelaboratorypractice.hedevelopmentofopeninglaboratoryportal,convenientformembersofthelaboratoryleveloutsidethelaboratoryinformationbrowsing,improvetheabilityoflabmanagermanagementofthelaboratory.heuseofthewebsitecaneffectivelyintegrate,managetheexistinglaboratoryresources,promotetheinformatizationconstructionoflaboratoryofzhejiangnormaluniversity,improvetheabilityoflabmanagerforlaboratorymanagement.
Keywords:
WebsiteofLaboratoryportalTheJ2EEplatformMVCTheframeworkofStruts2
1前言
1.1研究背景与研究意义
实验室是高校进行科研,培养学生实践动手能力,将所学知识应用于实际,也是学生提高自身实践能力,将所学知识融会贯通的最佳场所。
建立开放实验室,可以合理有效的分配实验资源,提升学校对实验室的管理程度,提高学生实践操作能力,将所学的知识应用于实际。
当前计算机网络技术迅猛发展,网络化教学在高校的日常教学工作中越来越普遍,发挥的作用也越来越大。
网络化教学可以优化资源配置,协调各部门工作,提高工作效率。
因此,高校建立开放实验室门户网站提升教学科研能力和实验管理水平,提高学生实践动手能力是十分有必要的。
采取网络化教育,可以有效实现对各种资源的合理分配,提高资源利用率;方便学习、交流、沟通;提高学校管理服务的水平。
通过建设实验室门户网站,管理者和使用者能够快速地进行网络管理和信息的发布,从而方便了实验室成员对实验室信息的获取,以及成员之间的交流沟通。
目前在技术方面,随着软件业对网络应用的重视,各种新兴的基于Web的软件开发技术逐步兴起,其中J2EE技术更是成为最热门的技术之一。
本次设计正是基在这种发展背景下,通过研究高校开放实验室门户网站的需求,采用J2EE平台技术,建立了适合浙江师范大学实验室使用的门户网站。
通过这个门户网站,为学校营造出一种新型的网络化管理平台,使实验室管理和信息化突破了时空限制,提高了工作效率和办学的水平。
同时,也为实验室成员之间、实验室成员与外界互动提供了一个交流平台。
1.2当前现状
时至今日实验室门户网站已经随处可见,其平台、框架也是各种各样,种类繁多,但功能上大同小异,最基本功能的都是实验室成员管理,实验成果展示,实验室风采新闻展示,实验室成员之间交流沟通。
而其中J2EE平台,MVC模式,Struts2框架是其中使用较多,效果比较好的,所以应用到此次设计中。
目前浙江师范大学实验室并未开发过专门的门户网站,由于学科性质,此次设计针对的是软件工程机房作为示范基地,为体验学科特性,与一般的实验室门户网站的功能有些不同,比如软件工程专业学生经常与外界有项目上的往来,因此该门户网站特意增加实验室成果展示以吸引校外软件开发项目来增强学生时间能力同时为实验室成员提供依靠自身知识与劳动获取报酬的机会。
1.3前景展望
实验室门户网站最终将会普及与各个高校的各个学科实验室,其功能也会更加多样,适应对应的学科。
到时候实验室门户网站不仅仅是实验室管理的工具,而是成为一种实验室的文化,使得实验室成员对实验更加的感兴趣,学习工作更加有动力。
另一方面,实验室门户网站的建设能为实验室吸引更多的人力物力资源,可以方便更多的人参与实验,使实验室能为更多人服务,大大提高实验室的功能。
因此,实验室门户网站的建设应用前景非常好,市场前景也很好。
1.4研究内容
课题定位的主要工作是将此网站设计、制作出来并发布和短时间维护。
最后主要是利用这个网站进行对实验室的管理。
网站模块如下:
a.基地简介
b.成员风采{出站成员风采、现有成员风采}
c.技术交流{学习模块、交流沟通}
d.日常管理{规章制度、实验室公告}
e.项目成果展示
f.项目承接{正在开发的项目、项目承接}
主要研究和解决以下三部分的内容:
(1)界面设计:
制作一个美化效果良好,用户交互的界面,增加用户的浏览兴趣。
(2)逻辑层设计:
实现界面和数据库的数据交互。
(3)数据库搭建:
设计一个可靠的数据库用户存储各种数据信息,确保网站的良好运行。
2相关技术介绍
2.1J2EE平台
J2EE是目前比较通用的网站开发平台,它并不是一种开发技术,而是一个含有多种开发技术标准的集合平台。
J2EE平台的一般定义是:
J2EE是一个开放性的、多种技术标准的平台,以服务器为核心的网站开发应用平台。
2.1.1J2EE三层结构
(1)用户端运行的客户层组件。
比如一些可以直接访问数据库的客户端的应用程序。
(2)运行在J2EE服务器上的Web层组件。
比如Servlet和JSP就是Web层组件,Web层组件能够访问数据库。
(3)运行在J2EE服务器上的业务逻辑层组件。
业务逻辑层组件也可以访问数据库。
2.1.2J2EE平台中包含多种技术规范
(1)JDBC(JavaDatabaseConnectivity):
JDBCAPI在访问不同数据库时提供统一的路径,规范了数据库连接的路径。
(2)JNDI(JavaNameandDirectoryInterface):
JNDIAPI被用于执行名字和目录服务。
它提供了一致的模型来存取和操作企业级的资源DNS和LDAP,本地文件系统,或应用服务器中的对象。
(3)EJB(EnterpriseJavaBean):
EJB提供了一个框架来开发和实施分布式商务逻辑,由此很显著的简化了具有可伸缩性和高度复杂的企业级应用程序的开发。
(4)RMI(RemoteMethodInvoke):
RMI协议调用远程对象上的方法.它使用了序列化的方式在客户端和服务器之间传递数据.RMI是一种被EJB使用的更底层的协议。
(5)JSP(JavaServerPage):
JSP页面由HTML(标准通用标记语言下的一个应用)代码和嵌入其中的Java代码组成。
服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端浏览器。
(6)JavaServlet:
Servlet是一种小型的Java程序,它扩展了web服务器的功能.作为一种服务器的应用,当被请求时开始执行,Servlet提供的功能大多和JSP类似。
(7)XML:
XML(标准通用标记语言的子集)是一种可以用来定其它标记语言的语言。
它被用来在不同的商务过程中共享数据。
XML的发展和java是相互独立的,但是,它和java具有的相同目标是平台独立性。
(8)JMS(JavaMessageService):
JMS是用于和面向消息的中间件相互通信的应用程序接口。
(9)JTA(JavaTransactionArchitecture):
JTA定义了一种标准的API,应用系统由此可以访问各种事物。
(10)JavaMail和JAF(JavaBeansActivationFramework):
JavaMail是用于存取邮件服务器的API,JavaMail利用JAF来处理MIME编码的邮件附件。
2.1.3J2EE优势
J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制:
(1)保留现存的IT资产:
基于J2EE平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。
(2)高效的开发:
J2EE允许公司把一些通用的、很繁琐的服务端任务交给中间供应商去完成。
这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。
(3)支持异构环境:
J2EE能够开发部署在异构环境中的可移植程序。
基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。
因此设计合理的基于J2EE的程序只需开发一次就可部署到各种平台。
这在典型的异构企业计算环境中是十分关键的。
J2EE标准也允许客户订购与J2EE兼容的第三方的现成的组件,把他们部署到异构环境中,节省了由自己制订整个方案所需的费用。
(4)可伸缩性:
企业必须要选择一种服务器端平台,这种平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。
基于J2EE平台的应用程序可被部署到各种操作系统上。
消除系统中的瓶颈,允许多台服务器集成部署。
这种部署可达数千个处理器,实现可高度伸缩的系统,满足未来商业应用的需要。
(5)稳定的可用性:
J2EE部署到可靠的操作环境中,他们支持长期的可用性。
2.2MVC模式
MVC(Model、View、Controller),是软件开发过程中比较流行的设计模式。
2.2.1MVC模式核心概念
(1)M(Model),封装应用程序的数据结构和事物逻辑,集中体现应用程序的状态,当数据状态改变的时候,能够在视图中体现出来。
JavaBean非常适合这个角色。
(2)V(View),是Model的外在表现,模型状态改变时,有所体现。
JSP非常适合这个角色。
(3)C(Controller),对用户的输入进行响应,将模型和视图联系到一起,负责将数据写到模型中,并调用视图。
JavaServlet非常适合这个角色。
2.2.2MVC模式图示
图2-1MVC模式
2.2.3MVC优点
(1)耦合性低:
视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。
因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。
(2)重用性高:
MVC模式允许使用各种不同样式的视图来访问同一个服务器端的代码,因为多个视图能共享一个模型。
模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。
由于已经将数据和业务规则从表示层分开,所以可以最大化的重用代码了。
(3)生命周期成本低:
MVC使开发和维护用户接口的技术含量降低。
(4)部署快:
使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。
(5)可维护性高:
分离视图层和业务逻辑层也使得WEB应用更易于维护和修改。
(6)有利软件工程化管理:
由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化管理程序代码。
控制器也提供了一个好处,就是可以使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。
给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处理,然后选择视图将处理结果显示给用户。
2.3Struts2框架
MVC模式给网站设计带来了巨大的好处,但是,MVC毕竟只是一种模式,不同的程序员写出来的基于MVC模式的应用风格不同,影响程序标准化。
Struts2框架就是对MVC模式实行标准化。
2.3.1Struts2框架工作原理
图2-2Struts2工作原理图
2.3.2Struts2优点
Struts2的应用可以不依赖于ServletAPI和strutsAPI;Struts2提供了拦截器,利用拦截器可以进行AOP编程,实现如权限拦截等功能;Strut2提供了类型转换器,我们可以把特殊的请求参数转换成需要的类型;Struts2提供支持多种表现层技术;Struts2的输入校验可以对指定方法进行校验;提供了全局范围、包范围和Action范围的国际化资源文件管理实现。
2.4Hibernate技术
Hibernate是Java中对象和关系的映射的解决方案,可以将数据库中的一跳记录看做一个Java对象,大大方便了编程,提高了可维护性。
在Hibernate中,常用的组件有PO、框架API、Hibernate配置文件、Hibernate映射文件。
2.4.1Hibernate框架原理
如图2-3所示为Hibernate组件关系。
工作流程为:
(1)框架API通过读取Hibernate配置文件,连接到数据库。
(2)当对PO进行操作时,框架API通过Hibernate映射文件来决定操作的表名和列名。
(3)框架API执行SQL语句。
图2-3Hibernate组件关系
2.4.2Hibernate编程步骤
根据Hibernate框架原理,利用Hibernate编程有4个步骤:
(1)编写Hibernate配置文件,连接到数据库。
(2)编写PO。
(3)编写Hibernate映射文件,将PO和表映射,PO中的属性和表中的列映射。
(4)编写DAO,使用Hibernate进行数据库操作。
2.4.3Hibernate优点
(1)Hibernate使用Java反射机制,而不是字节码增强来实现透明性。
(2)Hibernate是轻量级框架,映射非常灵活。
(3)Hibernate支持各种数据库,从一对一到多对多的各种复杂关系。
3系统分析
3.1系统可行性分析
可行性分析研究是在项目开发之前对项目进行的一种考量与鉴定,对即将要开发的项目进行全面的,综合的调查,目的是判断该项目实现的可行性与否。
由于软件系统是一个复杂的、涉及面广的系统工程,所以必须要有充分的可行性分析作为前提,才可以确保项目的稳定执行。
同时,可行性分析为该系统的开发提供说服力,可在短时间内确定问题是否能够解决。
3.1.1技术可行性分析
实验室门户网站采用J2EE平台,M