《基于WEB的义工申请系统毕业论文.doc》由会员分享,可在线阅读,更多相关《基于WEB的义工申请系统毕业论文.doc(43页珍藏版)》请在三一办公上搜索。
1、题 目 基于WEB的义工申请系统 内 容 摘 要随着我国经济的发展,人们的思想觉悟越来越高,更多的人热忠于帮助别人,申请义工的人也越来越多。在日常的申请信息的审核以及相关的文件处理越来越重要。由于地域、时间的限制,义工通常都需要等待很长时间,并且有些需要帮助的人不能及时的得到帮助,这样的效率极低,不利于帮助一些社会弱势群体。义工系统是一个由人、计算机、通信设备等硬件和软件组成的,能进行义工信息的收集、加工、存储、传输、维护和使用的系统。义工管理信息系统可促使公共服务事业向信息化方向发展,使公共服务事业处于一个信息灵敏、管理科学、决策准确的良性循环之中,为公共服务事业带来更高的效益。所以,义工系
2、统是公共服务事业现代化的重要标志,是公共服务事业发展的一条必由之路。关 键 词义工申报系统;动态网页;Servlet技术;JSP技术;Web-based reporting system of volunteers design and implementation AbstractAs Chinas economic development, increasing peoples ideological consciousness, more people in the heat loyal to help others, to apply more and more people volu
3、nteer Information in the daily review of applications and related documents dealing with are more and more important. Due to geographical and time constraints, volunteers usually need to wait a long time, and some people who need help can get timely help, so efficiency is very low, is not conducive
4、to help vulnerable groups in society. Volunteer system is a human, computer, communications equipment and other hardware and software components, can be voluntary information collection, processing, storage, transmission, maintenance and use of the system. Volunteer management information system aim
5、s to promote public service to the information-oriented, so that public service is an information sensitive, management science, decision-making virtuous cycle accurate for the public services lead to higher efficiency. Therefore, the volunteer public service system is an important symbol of moderni
6、zation, the development of public services the only way.Key wordsVoluntary reporting system; Dynamic Web Pages;Servlet Technology; JSP Technology基于Web的义工申报系统的设计与实现 第一章 绪论1.1项目开发背景随着社会的发展进步,人们的思想意识也在发展进步,很多人越来越承担了一些社会责任。义工给我带来的不仅仅是帮扶别人,还给社会减轻了压力。首先,义工是是传递爱心,传播文明,义工在把关怀带给社会的同时,也传递了爱心,传播了文明,这种“爱心”和“文明”
7、从一个人身上传到另一个人身上,最终会汇聚成一股强大的社会暖流;其次,义工是有助于建立和谐社会,义工工作,提供了社交和互相帮助的机会,加强了人与人之间的交往及关怀,减低彼此间的疏远感,促进社会和谐;最后,义工工作是促进社会进步。社会的进步需要全社会的共同参与和努力。志愿工作正是鼓励越来越多的人参与到服务社会的行列中来,对促进社会进步有一定的积极作用。当前,义工的申请还是自己手写申请,然后报到当地组织,然后由当地的义务组织层层向上报,这样带来了很多的不必要的麻烦,不仅,义工不能及时的帮助需要帮助的人,还使工作越来越拖,使很多问题不能顺利的解决,所以,目前当务之急就是能够使我们的工作高效的工作,使我
8、们能够及时的解决一些问题;然而,现在是一个信息社会,越来越多的工作离不开信息化,所以我们的工作信息化是一个发展的趋势。目前,在国内,我国的社会保障体制不够完善,很多应该得到帮助的人,没有得到相关的援助,大部分人也没有做一个义工的想法,因为在这方面没有一些相关的网站和这方面的信息化不够完善,所以我们要加强这方面的建设,所以这个义工申报系统是一个必然的产物。在国外,由于这方面的体制比较健全,社会素质比较高,大家也比较热衷从事义工劳动,这样能使我们更加健康的生活,更重要的是他们在信息化方面做的比较好,他们很早就有关于这方面的网站,这使得他们比我们成熟,所以我们要加快发展我们的社会保障体制,但毫无疑问
9、加快信息化建设是我们的重点。1.2项目开发目标1. 管理员可以登录系统,安全性比较高,很多以前需要很多时间进行的工作,现在更加便利,管理员可以在系统里发布一些义务的活动,使很多义工能及时得到信息。2. 管理员可以对义工的信息进行修改,有些义工不能完成义务活动的同时,可以使活动能尽快的得到落实,使需要帮助的人能尽快得到帮助。3. 义工可以登录,并且可以进入申请参加义工劳动,这样可以避免以前还需要层层申请,耽误时机,这样可以使我们的工作简化不少。1.3可行性分析1.3.1系统平台本系统开发环境采用MyEclipse8.5,后台采用MySQL数据库。该系统的运行环境包括Tomcat服务器,JDK1.
10、6。本系统采用B2C模式进行设计。可以看出本系统所要求的内容和实现的功能是完全可以通过JSP和数据库的交互实现的,因此该系统开发的可行性完全可行。1.3.2 B/S模式概述本系统是基于B/S模式的系统,首先先来了解一下B/S模式:B/S结构(Browser/Server结构)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与
11、升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。随着Internet和WWW的流行,以往的主机终端和CS都无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了BS型模式,即浏览器服务器结构。B/S模式最大特点是:用
12、户可以通过WWW例览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息,这些信息都是由许许多多的Web服务器产生的,而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中。客户端除了WWW创览器,一般无须任何用户程序,只需从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Intranet。 B/S结构的优点 (1)、
13、具有分布性特点,可以随时随地进行查询、浏览等业务处理。 (2)、业务扩展简单方便,通过增加网页即可增加服务器功能。 (3)、维护简单方便,只需要改变网页,即可实现所有用户的同步更新。 (4)、开发简单,共享性强 B/S 模式的缺点 (1)、个性化特点明显降低,无法实现具有个性化的功能要求。 (2)、操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。 (3)、页面动态刷新,响应速度明显降低。 (4)、无法实现分页显示,给数据库访问造成较大的压力。 (5)、功能弱化,难以实现传统模式下的特殊功能要求。第二章 系统开发环境2.1 系统开发环境本网站系统的开发环境是Windows 环境,使用JS
14、P结合Mysql数据库,配置Tomcat网站服务器。本系统基于以下软件设备和硬件设备环境:硬件设备:Intel(R) Pentium(R) Dual-Core CPU 2.19GHz,1.99GB内存,320G硬盘,显示器分辨率为1280*1024软件系统:操作系统采用Windows XP作为系统软件。2.2 JSP简介2.2.1 JSP 概述JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于
15、Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。 JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被
16、客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。 JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。2.2.2 JSP特点1将内容的生成和显示进行分离使用JSP技术,Web页面开发人
17、员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识JavaBeans 组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问Java Beans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML) 页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的W
18、eb浏览器的完全可用性。 2强调可重用的组件 绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。 3采用标识简化页面开发 Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的J
19、SP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。2.3 Tomcat简介Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP
20、规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的 改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。2
21、.4 Myeclipse 8.5简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类:1. J2EE模型2. WEB开发工具3. EJB开发工具4. 应用程序服务器
22、的连接器5. J2EE项目部署服务6. 数据库服务7. MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。第三章 系统设计3.1 系统功能概述 本系统以管理员身份登录后,主要可以实现三个基本功能:(1)义务活动管理:活动的增,删,改(2)义工管理:义工信息的增,删,改(3)申请管理:义工申请的管
23、理3.2总体目标和任务根据上述基本功能,结合自己以前的学习基础,我决定利用JSP技术+MySQL数据库开发本系统。第一步,查阅资料;第二步,环境配置(包括JDK1.6,MyEclipse8.5,Tomcat 服务器,MySQL数据库);第三步,建立数据库;第四步,系统开发;第五步,论文成稿。第四章 系统设计4.1各模块功能概述系统分为三大模块:义工管理模块、义工项目管理模块、义工申请模块。各个模块下又细分了不同的功能模块。详细功能模块结构如图4.1所示4.1.1 功能模块结构图 系统分为三大模块:义工模块、义工活动模块。各个模块下又细分了不同的功能模块。详细功能模块结构如图4.1所示:管理员登
24、录义工活动模块义工模块义工模块义工登陆义工申请义工活动增加义工活动修改义工活动删除查看义工信息义工添加删除义工图4.1功能模块结构图4.2管理员登录页面功能管理员登录后,可以对义务活动,义工进行管理,也可以执行相关的管理功能。管理员登录时需要输入管理员信息,并进行信息验证,判断是否和数据库中管理员信息一致。管理远需要输入的信息包括:用户名密码4.3信息管理模块管理员成功登录之后,跳转进入信息管理页面,管理页面主要包含三个方面:义工管理,义工活动管理。义工登录之后,可以进行的工作是可以进行义工活动的申请。4.3.1 义工管理点击进入义工管理后,管理员可以对义工的信息进行添加,删除,修改操作。如果
25、修改或删除未成功,会自动跳转到错误页面。4.3.2义工申请管理进入义工申请页面后,义工同样可以对义工活动进行申请进。如果义工申请没有成功,自动跳转到错误页面。4.3.3义工项目管理 义工项目管理是本信息系统比较重要的管理模块,首先,管理员可以添加相关义工的项目的信息,其次管理员可以对已有的项目进行相关的修改,最后对已经过期的项目进行相关的删除;如果这之中出现了任何错误,会自动跳转到错误页面。4.2数据库设计4.2.1数据库的选择本系统采用MySQL数据库。4.2.2MySQL概述MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。
26、而2009年,SUN又被Oracle收购.对于MySQL的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。4.2.3为什么选用MySQL?选用MySQL作为后台数据库主要是看到了MySQL 的各种优点。MySQL有很多优点:首先, MySQL支持5000万条记录的数据仓库,如此大的数据存储量几乎可以满足所有中小型企业的要求。其次, MySQL适应所有平台。再者, MySQL是一个开源软件,因此安装时可以排除不必要的部分
27、,从而提高运行速度。除此之外,MySQL还是一款免费的数据库软件,而且简单易学。4.2.4概念结构设计 通过对此系统的总体分析,可以得到系统的实体-关系模型(E-R图)如下。带下划线的表示主码,其它属性如下所示:系统管理员:管理员ID,管理员姓名,管理员密码;义工:义工ID,义工姓名,义工电话,义工E-mail,义工项目代码,申请日期;义工项目:(义工项目ID,义工项目名称,义工项目类型,义工项目申请日期,申请人数)义工申请表:(义工号,义工项目id,管理员id,申请人数)管理员管理员密码管理员姓名管理员id义工义工项目义工E-mail义工项目代码申请日期义工姓名义工电话义工ID申请人数ID义
28、工项目名称义工项目类型义工项目申请日期义工项目ID管理管理义工申请操作管理申请人数4.2.5物力结构设计 现在将上面的数据库概念结构设计转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。项目信息记录系统数据库中各个表的设计结果如下面所示。每个表格表示在数据库中的一个表。数据库有以下几个表组成:Admin:管理员信息表初始有系统管理员的id号码,管理员姓名和管理员密码;Project:义工项目信息表,记录各个义工项目的信息;Employee:义工信息表,记录义工相关;Management:申请表,义工相关的各种信息。管理员信息表列 名主 键数据类型长 度允许为空AdminId是i
29、nt10否AdminUser否Varchar20否AdminPass否Varchar20否Project表列 名主 键数据类型长 度允许为空Pid是Varchar20否Pname否Varchar20否Ptype否Varchar20否Ptime否date20否Pnum否Int20否Employee表列 名主 键数据类型长 度允许为空Eid是Varchar20否Ename否Varchar20否Ephone否int20否E-email否Varchar20否Pid否Varchar20否Etype否Varchar20否Management表列 名主 键数据类型长 度允许为空Eid是Varchar20否P
30、id是Varchar20否Adminuser否Varchar20否Num否int20否第五章 系统实现5.1实现概述本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图5.1所示:图 5.1 系统工作原理图5.2详细设计在系统分析的基础上,结合用户的使用状态,以及对现有网络系统的观察,得出本系统的功能模块结构图,此模块共分为三层结构,各结构之间紧密相连,共同建构了基于B/S结构的义工申报系统。一下详细的描述了各个模块的实现
31、代码以及详细的介绍。5.2.1 首页登录实现运行首页面出现用户登录界面,根据不同的用户进行选择进入不同的登录页面进行登录。是一个综合的系统登录页面。使用系统的人员可以根据自己的角色进行选择进入登录入口,然后进入相应的登录页面,输入要求输入的验证信息就可以进行对系统的操作和使用。涉及到了页面文件是:index.jsp,login.jsp首页界面如图5.2:5.2.2管理员后台的页面 当管理员输入正确的密码之后要进行后台的相关功能的处理,在这一块要处理的是很多业务。5.2.2.1关于义工的管理在这里我们要对义工的基本信息进行相关的管理,比如说增加义工,或者对义工进行修改,再或者由于其他的原因对义工
32、的基本信息进行相关的修改工作。这是同一个页面下的一些相关的功能和相关的模块。义工的管理 首先,你进入到管理页面,点击义工项目管理,会下列出两个子菜单,一个是义工项目管理,一个是义工申请,点击义工项目管理,管理的页面会出现员工的详细信息,比如说义工项目的编号,还有义工项目的名称,以及申请人数和其他的详细信息,不仅如此,还有相关的操作。 项目添加的功能,当你在页面点击添加的时候,会弹出下面的一个对话框,在这个页面填入项目的代码,以及项目的名称,申请人数等相关的详细信息。注意以上项目代码和项目名称,以及申请人数必须要填写清楚,当添加成功的时候,会出现以下页面,当你点击确定是表示,项目真正添加成功了。
33、当然,你还可以在主页面进行修改工作,当你点击表中修改的那个标签的时候,会弹出下面的的、页面,进行修改的工作,在修改信息中,不能修改项目代码,其他的都可以进行修改,这样子就能够修改成功,注意,申请日期一定要按照标准格式写否则会出现异常。当填写完相关信息后,并进行验完以后,会出现一下页面,这样就表示已经修改成功了。在义工项目管理的页面还有一个删除功能,当某个项目由于某总原因不再需要的时候,可以点击删除,这样你就可以把不需要的进行删除。 点击左边的员工管理,这是会弹出员工的相关信息比如说员工代码,还有员工的性别、职位、联系电话、电子邮件、所属部门和照片等一些相关的信息。当你点击下面的添加员工的按钮时
34、,会出现以下页面,在这个页面员工的姓名不能小于6个字符,并且长度也是同样的要求,你必须要填写身份证号,并且不小于15个字符,还有员工照片的上传也是本页面的特色功能之一,出身日期,必须严格按照格式来进行填写,不能出现错误,员工信息的填写中,员工姓名,以及密码、身份证号码、出身日期、身份证地址和联系电话是必须要填写的。 在信息页面还可以对义工的信息进行相关的修改,在修改的页面中,后面带有红色标号的必须要填写完毕,注意在填写的过程中一定要注意,上面刚才强调的问题,当你点击义工查询的时候会出现,下面的页面,在这个页面的之中,你必须要输入员工的姓名和他所属的分组,这样可以查出。当你输入正确信息后,会出现
35、一些员工的详细信息,在这个页面也可以对义工进行相关的信息的操作,这些操作有删除、添加以及修改等的功能,在主页面下面点击用户进行义工的的登录的功能时,会出现下面的页面,这是义工申请的页面,当你点击的时候申请人数会出现加一的情况,相应的数据库里面也会有一些相关的信息。当你点击完后会出现下面的页面,这个页面的出现表示后台运行正常,也表示运行成功了。第六章 结束语经过一段时间的设计和开发,智能化网络投、审稿系统基本开发完毕。其功能基本符合需求,能够实现用户登陆、修改密码、专家登陆,在线审稿,管理员的登录,对稿件的查询,编辑和删除。但是由于毕业设计时间较短,以前没也有开发过动态网站的经验,对Visual
36、 Studio2005也是第一次接触,所以刚开始开发的时候确实也比较困难,但是经过一段时间的摸索和资料的翻阅,对Visual Studio2005也有了大致的了解,熟悉了一些基本控件。由于有过C+学习的经验,对于C#的学习还是比较快的。不过毕竟学习的时间较短,整个系统的界面并不美观,网页布局不是很合理,用户注册不是很详细,只需填写邮箱地址,没有同意条款页面,用户注册需输入的信息比较少,这样安全性不高,系统的自适应性还不够完善还需要进一步的改善和加强。经过这一个多月的学习和开发,我提高了自我学习和自我解决办法的能力,提高了我的实际操作能力,从以前的理论上升到实践,从感性认识上升到理性认识,真正做
37、到学有所用,虽然在设计过程中我也遇到一些困难,但在老师和同学的帮助和自己的努力下,我都一一克服了。通过这次毕业设计,我对动态网页的制作过程有初步的了解,同时又多了解了一个开发软件和开发语言,让我接触了一个新的领域,扩大了知识面,同时对动态网页的开发也产生了浓厚的兴趣。这次的毕业设计让我受益匪浅,使我能够更加独立地解决问题,对我以后走出校园踏入社会很有帮助,也使我变得更加耐心和细心的去解决事情。致 谢经过这段时间的学习与努力,本次毕业设计按时完成了。在此多谢指导老师贾利宾老师。他无论在理论上还是在实践中,都给与我很大的帮助,在我遇到困难的时候给予我鼓励。还有在毕设设计过程中帮助过我的同学,耐心的
38、和我一起解决问题,在此对所有帮助过我的人道一声“谢谢!”。在四年的大学生涯里,有欢乐,有悲伤,有惊喜,这一切的一切都会成为我以后美好的回忆,在这四年里我还得到众多老师的关心支持和帮助,在此,谨向老师们致以衷心的感谢和崇高的敬意!最后,我要向在百忙之中抽时间对本文进行审阅,评议和参加本人论文答辩的各位师长表示感谢!参考文献1 JSP程序设计 Vivek Chopra, Jon Eaves, Rupert Jones 等著 人民邮电出版社 20062 Eclipse 编程技术与实例 叶达丰 编著 人民邮电出版社 20063 JSP网络应用开发例学与实践 清华大学出版社 20084 JSP数据库项目
39、案例导航 刘中兵,李伯华 编著 清华大学出版社 2006 4陈翔编 编著基于B/ S 的期刊稿件管理系统的设计和实现杭州师范学院学报(自然科学版)2004 3 (2)5 DreamweaverCS3综合实例篇 卢辛等 编著 清华大学出版社 20066 网络开发混合编程 卢鸥平,郭江杰等 编著 电子工业出版社 2008附录 部分代码数据库部分 package cn.itcast.service.base;import java.io.Serializable;import java.util.LinkedHashMap;import java.util.Map;import javax.pers
40、istence.Entity;import javax.persistence.EntityManager;import javax.persistence.PersistenceContext;import javax.persistence.Query;import org.springframework.transaction.annotation.Propagation;import org.springframework.transaction.annotation.Transactional;import cn.itcast.bean.QueryResult;import cn.i
41、tcast.utils.GenericsUtils;SuppressWarnings(unchecked)Transactionalpublic abstract class DaoSupport implements DAO PersistenceContext protected EntityManager em;/* 实体类 */protected Class entityClass = GenericsUtils.getSuperClassGenricType(getClass();public QueryResult getScrollData()return getScrollDa
42、ta(-1, -1, null, null, null);public QueryResult getScrollData(int firstResult, int maxResult)return getScrollData(firstResult, maxResult, null, null, null);public QueryResult getScrollData(int firstResult, int maxResult, LinkedHashMap orderby)return getScrollData(firstResult, maxResult, null, null,
43、orderby);public QueryResult getScrollData(int firstResult, int maxResult, String where, Object params)return getScrollData(firstResult, maxResult, where, params, null);待添加的隐藏文字内容3public QueryResult getScrollData(int firstResult, int maxResult, String where, Object params, LinkedHashMap orderby)Strin
44、g entityName = getEntityName(entityClass);String whereql = where!=null & !.equals(where.trim() ? where + where : ;Query query = em.createQuery(select o from + entityName + o + whereql + buildOrderby(orderby);if(firstResult!=-1 & maxResult!=-1) query.setFirstResult(firstResult).setMaxResults(maxResul
45、t);setQueryParameter(query, params);QueryResult qr = new QueryResult();qr.setResultlist(query.getResultList();query = em.createQuery(select count(o) from + entityName + o+ whereql);setQueryParameter(query, params);qr.setRecordtotal(Long)query.getSingleResult();return qr;/* * 设置查询参数 * param query 查询对象 * param params 参数值 */public static void setQueryParameter(Query query, Object params)if(params!=null)for(int i = 0; i params.length ; i+)query.setParameter(i+1, paramsi);