jsp学生管理系统 带论坛ssh论文_第1页
jsp学生管理系统 带论坛ssh论文_第2页
jsp学生管理系统 带论坛ssh论文_第3页
jsp学生管理系统 带论坛ssh论文_第4页
jsp学生管理系统 带论坛ssh论文_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

PAGE51-课题:系部:班级:学号:学生:指导教师: 装订交卷日期:2013年3月30日 毕业设计成绩评定表指导教师评语:(包含学生在毕业设计期间的表现)成绩(平时成绩):指导教师签名:年月日评阅教师评语:(毕业设计与设计报告的质量与水平)成绩(评阅成绩):评阅教师签名:年月日答辩情况记录:(不安排答辩的学生此表不填)答辩成绩:答辩委员会主任(或答辩教师小组组长)签名:年月日总评成绩:装订顺序:(1)封面、(2)毕业设计成绩评定记录、(3)毕业设计任务书、(4)目录、(5)正文、(6)附录、(7)参考文献。打印要求:双面打印;其中封面的反面为空白页;目录的首页、正文的首页打印在右面;正文首页的页码号从1开始编码。成绩评定:总评成绩以优秀、良好、中等、及格、不及格五级计分制计分,平时成绩、评阅成绩、答辩成绩不受限制,但须统一。参加答辩学生的平时成绩、评阅成绩、答辩成绩分别占总评成绩40%、20%和40%;未安排答辩学生的平时成绩与评阅成绩分别占总评成绩40%、60%。平时成绩、评阅成绩、答辩成绩任意一项不及格,则总评成绩不及格。软件工程系制毕业设计任务书一、设计课题:学生管理系统的设计与实现二、设计目的:通过条形码来进行仓库管理,以快速、准确、低成本的方式为客户提供最好的服务。本课题要求学生采用SQLServer2008数据库为后台、JSP为前台,设计一个学生管理系统。通过本课题的设计,能够熟练运用SQLServer2008数据库和JAVA语言。因此本课题具有一定的实用价值。三、设计要求本课题设计要求如下:1、个人信息包括用户名的显示,密码的修改。2、基础信息管理学院编号:数据库后台增加。学院名称:数据库后台编辑。学院简介:数据库后台编辑或者通过管理员编辑。系别管理:数据库后台编辑或者通过管理员编辑。基本操作:管理员特有,分为编辑和删除。3、课程管理课程编号:数据库后台增加。课程名称:数据库后台编辑。学时:数据库后台编辑。课程类型:数据库后台编辑或者通过管理员操作。基本操作:管理员特有,分为编辑和删除。4、学生成绩查询按学院系别专业班级课程的流程选择查询对象。5、公告管理标题:数据库后台编辑。发布时间:数据库后台自动生成。发布人:系统管理员。内容:查看内容。基本操作:管理员特有删除功能。6、内部论坛留言功能。7、考试试题维护试题ID:数据库后台增加。试题名称:数据库后台增加。试题附件:数据库后台增加,具有下载功能。发布时间:数据库后台自动生成。基本操作:管理员特有删除功能。8、上传试题学生具有上传试题名称和试题附件的功能。9、安全退出系统返回登录页面。四、毕业设计报告要求:毕业设计报告由以下几部分组成:1、标题封面:标题要求简洁、确切、鲜明。2、毕业设计成绩评定记录表(教师等填写)3、毕业设计任务书(指导教师提供)4、目录。5、正文6、附录五、设计进度计划:11月15日11月25日

查阅资料、系统功能分析、模块设计、数据库设计12月1日2月25日

代码设计、调试3月1日3月30

日撰写毕业设计报告4月初

毕业设计答辩(如有变动,另行通知)六、毕业答辩需提交的材料:1.完整的系统代码(光盘或磁盘)2.毕业设计报告学生:石超指导教师签名:朱堂勋2013年3月30日注:毕业设计任务书包括设计课题、设计目的、设计要求、毕业设计报告要求、设计进度计划、毕业设计答辨需提交的材料等项目。

目录TOC\o"1-2"\h\z\u一、软件可行性研究与项目开发计划 -1-1.问题定义 -1-2.可行性研究 -1-3.项目开发计划 -2-4.项目概述 -3-5.实施计划 -4-二、需求分析 -5-1.引言 -5-2.任务概述 -6-3.数据描述 -7-三、软件概要设计 -7-1.引言 -7-2.任务概述 -8-3.总体设计 -9-4.接口设计 -10-5.数据结构设计 -10-6.安全保密设计 -17-7.维护设计 -17-四、详细设计说明书 -17-1.引言 -18-2.总体设计 -18-3.程序描述 -19-五、软件测试与调试 -32-1.引言 -32-2.任务概述 -32-3.计划 -33-4.测试项目说明 -34-5.测试分析报告 -35-6.测试计划执行情况 -35-六、结束语 -36-一、软件可行性研究与项目开发计划1.问题定义可行性研究是运用多种科学手段(包括技术科学、社会学、经济学及系统工程学等)对一项工程项目的必要性、可行性、合理性进行技术经济论证的综合科学。项目可行性研究是项目前期工作的主要内容,可行性研究通过市场分析,技术研究,经济测算,最后确定是否投资一个项目。可行性研究学生管理系统始终是学校和学生之间的一个主要的联系纽带,在该系统中起着包括学生基本信息、学生课程管理等是学生管理系统最重要的。可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,也是很重要的。2.1要求2.1.1基本运行要求:学校所需要开发的软件要求能在公司所有计算机上基于WINDOWS系统运行,支持无线传输,并具有条形码输入接口。同时所开发的软件要能与学校其他管理系统平台相衔接,统一管理学校的正常教学。2.1.2功能要求:主要功能模块为管理员系统,教师系统,学生系统。系统能够使查询修改学生的信息变得更为轻易等,使这些信息为一目了然。2.1.3安全要求:登陆系统时,需验证身份和密码,只有通过验证的身份才能进入系统进行信息的操作,以防止学生信息泄露。同时该系统还需具有灵活性、兼容性等要求。2.2目标学生管理系统目标:建立一个能灵敏、高效、全面提高学生信息的管理系统。(1)学生基本信息管理子系统学生可以在网上查看个人信息,查看课程信息、考试信息、上传和下载相关资源等,学生也可在在线与老师交流等。(2)教师基本信息管理子系统教师可以查看自己的个人信息,查看课程信息、学生成绩管理、下载相关资源、公告管理、内部论坛等。(3)管理员基本信息管理子系统管理员可以查看修改个人信息,基础信息管理,课程管理,学生成绩查询,公告管理,内部论坛管理,考试试题维护等。2.3条件、假定和限制(1)系统开发基于windows操作系统,通过SQLServer2008等数据库软件和MyEclipse等开发工具进行系统开发。(2)进行系统开发时间为四个月左右(3)该系统确保每种商品不会既超过既定库存,也不会少于当期需求。2.4可行性研究方法通过经济可行性,技术可行性,运行可行性3个方面进行可行性分析。2.5决定可行性的主要因素经济可行性:学校有能力承担系统开发费用。开发新系统的工作是一项间距复杂的工作,它的投资主要是人力和物力的投资。软件企业作为一个简短的高科技产业,其员工要求都比一般企业的要求要高,而且对系统开发及软件产业了解比较多,所以在自我开发管理系统的过程中,企业自己比较容易安排人手,这样就可以为企业节约大部分的额外开支。同时软件就其它产品来说,属于高端行业,无论是产品的价格还是质量都比较高,而学校都要求有雄厚的资金支持。所以,在系统的开发过程中,学校完全有能力承担开发费用。技术可行性:在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。因为,有的企业对员工的素质要求比较高,从管理层到下面的销售人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够掌握。运行可行性:本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个学生管理系统采用友好的交互界面,简介明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。3、项目开发计划11月15日11月25日

查阅资料、系统功能分析、模块设计、数据库设计12月1日2月25日

代码设计、调试3月1日3月25

撰写毕业设计报告4月初

毕业设计答辩3.1引言进行具体调查、研究、分析,确定有利和不利的因素、项目是否可行,估计成功率大小、经济效益和社会效果程度,为决策者和主管机关审批的上报文件3.2编写目的本报告的主要作用是确定各个项目模块的开发情况。具体步骤:拟订开发计划书,分配项目工作,安排项目进度。读者是系统用户、系统开发人员、系统开发的决策者以及学校的决策者。3.3项目背景(1)所建议开发的软件系统的名称:学生管理系统(2)本项目的提出者是某学校的负责人。开发者为该宿迁软件开发中心的工作人员。使用者为学校的管理人员、老师和同学。实现该软件的计算操作平台是联入学校内部局域网的多台计算机,以及手持数据终端。(3)该软件系统首先联入学校内部局域网,统一管理学校正常的教学,使小小整体协调性更高,为学校带来更多便利。3.4参考资料《管理系统》高等教育出版社4项目概述4.1工作内容见可行性研究报告.4.2条件与限制未完成项目应具备的条件:对项目开发有扎实的理论知识;对编程有良好的技术基础;应获得开发项目所需的资金。4.3产品4.3.1程序程序名称:学生管理系统4.3.2文档《可行性研究报告》《需求需求说明书》《软件概要设计》《软件详细设计》《软件编码》《软件测试与调试》4.4运行环境软件环境:Windows操作系统下的微型计算机。SQLServer2005数据库jre1.5及以上4.5验收标准编号条款具体事项合格不合格1功能要求需求分析所要求的功能2性能要求软件运行速度快,响应时间短,安全性能好,兼容性较好3界面操作界面友好直观,色彩明朗,设计有序,给人一种宁静的感觉,使用户能更好进行操作4运行环境硬件环境:微型计算机软件环境:Windows操作系统(WindowsXP等等)5.实施计划5.1任务分解编号阶段具体任务1问题定义通过访问调查,明确要解决的问题,确切地定义问题的必要性。2可行性研究研究问题的范围,是否值得去开发,并且是否有可行的解决方法。3需求分析跟用户密切配合,沟通,确定目标系统具备的功能,建立用户确认的系统逻辑模型。4概要设计提出低成本,中等成本,高成本设计方案,确定解决问题的策略及目标系统中应包含的程序。5详细设计设计出程序的详细规格说明,具体实现目标系统。6编码和单元测试编写容易理解和维护的程序模块,并对其进行测试。7综合测试通过各种类型的测试(及相应的调试)是软件达到预定的要求。测试分为:集成测试、验收测试、现场测试。8软件维护通过各种必要的维护活动使系统持久地满足用户的要求。维护步骤:提出维护要求,分析维护要求,提出维护方案,审批维护方案,确定维护计划,修改软件设计,修改程序,测试程序,复查验收等。需求分析1.引言1.1编写目的为了把教育信息化与职业技术学院的实际教学和管理结合起来,为了将Internet的教育网络与传统思想、教学管理结合起来,各取所长,将职业技术学院的教学更加科学化、科技化,职业技术学院辅导教学平台是必不可缺。吉林财经大学辅导教学平台将传统教学观念与现代科技结合,提供多种教学资源、网络教学、以及信息化管理,可以大大提高教学的质量、管理的效率,能更有效的利用资源。重庆电子工程职业学院辅导教学平台可以帮助学校在教学过程中实现实时互动,与高职院校的教学特点,师生挥动授课方式、资源共享的学习条件、实时解疑的学习策略都是传统教学方式所不能给与的,这也是重庆电子工程职业学院辅助教学平台设计的主要目标。计算机与网络技术的高速发展,带来了信息时代的变更,使得地球真正变成了一个开放的信息村,信息资源的共享和交流达到前所未有的高度,这也深深影响到各个领域,一场信息化革命正悄然的改变着各个行业,对高等教育来说,充分利用网络化和信息化来提高教学水平、转变教学模式是解决传统课堂教学和管理的一个迫切课题。在信息时代中实现高等教育的信息化,这是一个必然的趋势,而网络教学这一新生事物也因此孕育而生,网络教学是一个开放的概念,可以把它概括为:在先进理念指导下,运用网络资源,在教师指导下,促进学生积极自主学习,加强师生交流,加强师生协作研讨,优化教学过程。1.2项目背景软件项目名称:学生管理系统本项目适用于学校学生信息的管理!该软件系统同其他系统或其他机构的基本的相互来往关系如下:该系统的数据库及其备份建立在SQLServer2008数据库基础上1.3定义学生管理系统包括对学生的基本信息查询,学生信息的管理:对当前学生或班级的信息做出一些综合统计及管理。2.任务概述2.1目标学院在教学这一部分主要是由教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,以及让教务处在最短的时间段把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生、学生成绩进行各种查询和统计,以及很好地对系统进行维护。2.2运行环境操作系统:WindowsXP等等支持环境:IIS5.0数据库:MicrosoftSQLServer20082.3条件与限制由于此系统是自己的PC机上演示及在个人机上进行开发,所以其经费没有计算。其开发期限预计在四个月左右内完成。3.数据描述3.1静态数据各个数据库表、各个图片、各个模板。3.2动态数据见详细设计说明书。3.3数据库介绍学生管理系统统适合WindowsXP等等操作系统,后台数据库选择SQLServer2008数据库,基本满足现在的主流配置的需要。软件概要设计1.引言这份概要设计说明书是说明系统的处理概念和系统流程.1.1编写目的从该阶段开发正式进入软件的实际开发阶段,本阶段完成系统的大致设计并明确系统的数据结构与软件结构。在软件设计阶段主要是把一个软件需求转化为软件表示的过程,这种表示只是描绘出软件的总的概貌。本概要设计说明书的目的就是进一步细化软件设计阶段得出的软件总体概貌,把它加工成在程序细节上非常接近于源程序的软件表示。1.2项目背景开发软件系统的名称为学生管理系统;1.3定义在该概要设计说明书中的专门术语有:

总体设计接口设计数据结构设计运行设计出错设计

具体的概念与含义在文档后将会解释。1.4参考资料《使用软件工程与实训》主编杜文浩白萍清华大学出版社《软件需求》主编KarlE.wiegers清华大学出版社2.任务概述2.1目标2.2运行环境操作系统:WindowsXP等支持环境:IIS5.0数据库:MicrosoftSQLServer20082.3需求概述该学生管理系统应用于高校学生信息管理,主要有3个主要功能模块组成,分别是:学生信息管理系统模块,学生成绩管理模块和系统管理模块。学生信息管理模块包括对学生的学籍等基本信息的查看和维护管理;学生成绩管理模块主要包括对学生成绩的录入和查询;系统管理主要包括对系统数据字典以及管理员的维护模块。除了这三大主要功能模块之外还涉及到于本系统相关的一系列小的功能模块,例如,学科管理、班主任管理等。本系统设计的学生信息管理系统很好的解决了学生信息管理方面的困难,提高了学生信息管理效率、减轻了教务员的工作负担,节省了大量的人力、物力资源,给高校学生信息管理带来了很大的方便。数据精确度:经多次测试,该系统最终的输出数据的精确度达到95%以上时间特性:该系统在响应时间、更新处理时间,数据转换与传输时间、与运行时间等方面时间短、速度快。适应性:该系统专为高校量身定做,对高校有很强的适应性复用性:该系统的功能和大多数高校基本吻合,所以可以在大多数高校中复用灵活性:该系统可以在大多数WindowsXP等以上版本上应用,与微软的office办公软件相结合,可以打印该系统中的成绩、学生表等,该系统采用团队分块制作,以后维护、改方便2.4条件与限制由于此系统是自己的PC机上演示及在个人机上进行开发。3.总体设计3.1处理流程学生管理系统分三层(1)管理员系统(2)教师系统(3)学生系统3.2总体结构和模块外部设计学生成绩管理系统学生成绩管理系统学生系统管理员系统教师系统学生系统管理员系统教师系统安全退出系统内部论坛上传试题考试试题下载我的成绩系统公告个人信息安全退出系统内部论坛公告管理学生试题下载学生成绩管理个人信息安全退出系统考试试题维护内部论坛公告管理学生成绩查看课程管理基础信息管理个人信息安全退出系统内部论坛上传试题考试试题下载我的成绩系统公告个人信息安全退出系统内部论坛公告管理学生试题下载学生成绩管理个人信息安全退出系统考试试题维护内部论坛公告管理学生成绩查看课程管理基础信息管理个人信息 3.3功能分配管理员系统管理整个学生管理系统的常用信息教师系统管理学生的常用信息学生系统管理本人的常用信息4.接口设计4.1外部接口学生管理系统统适合WindowsXP等操作系统,后台数据库选择MicrosoftSQLServer2008。4.2内部接口学生管理系统内部通过对数据库各个表的操作进行联系,其中t_admin是管理员登陆账号和密码的管理。以后后面的t_banji、t_chengji、t_gonggao、t_kecheng、t_liuyan、t_shiti、t_stu、t_tea、t_xibie、t_xuyuan、t_zhuanye,都是学生管理系统中不可缺少的数据库表。5.数据结构设计5.1逻辑结构设计在上面的实体以及实体之间的关系的基础上,形成数据库中的表格和各个表格之间的关系。学生管理系统数据库中各个表格的设计结果如下面的几个表格所示。每个表格表示在数据库中的一个表。逻辑结构设计的任务就是把概念模型设计阶段设计好的基本E-R图转换为与选用的具体机器上的DBMS产品所支持的数据模型相符合的逻辑结构,现选用关系模型,E-R图向关系模型的转换结果如下所示:t_admin表t_gonggao表t_zhuanye表t_kecheng表t_xuyuan表t_chengji表t_liuyan表t_xibie表t_banji表t_shiti表t_stu表t_tea表5.2物理结构设计t_admin表t_gonggao表t_zhuanye表t_kecheng表t_xuyuan表t_chengji表t_liuyan表t_xibie表t_banji表t_shiti表t_stu表t_tea表6.安全保密设计通过设置用户的权限来控制对数据库的访问,只有系统管理员权限的人才能进行对系统用户的管理,也就是对t_admin表的控制访问。只有系统用户,比如管理员,他们才有对该系进行操作。7维护设计由于系统较小没有外加维护模块,因为维护工作比较简单,仅靠数据库的一些基本维护。四、详细设计说明书1.引言设计每个模块的实现算法、所需的局部数据结构。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。1.1编写目的为了方便系统数据库管理及维护人员了解系统的详细结构组成。1.2项目背景开发软件系统的名称为学生管理系统1.3参考文献《实用软件工程与》主编杜文浩白萍清华大学出版社《软件需求》主编KarlE.Wiegers清华大学出版社2.总体设计2.1需求概述该学生管理系统应用于高校学生信息管理,主要有3个主要功能模块组成,分别是:学生信息管理系统模块,学生成绩管理模块和系统管理模块。学生信息管理模块包括对学生的学籍等基本信息的查看和维护管理;学生成绩管理模块主要包括对学生成绩的录入和查询;系统管理主要包括对系统数据字典以及管理员的维护模块。除了这三大主要功能模块之外还涉及到于本系统相关的一系列小的功能模块,例如,学科管理、班主任管理等。本系统设计的学生信息管理系统很好的解决了学生信息管理方面的困难,提高了学生信息管理效率、减轻了教务员的工作负担,节省了大量的人力、物力资源,给高校学生信息管理带来了很大的方便。数据精确度:经多次测试,该系统最终的输出数据的精确度达到95%以上时间特性:该系统在响应时间、更新处理时间,数据转换与传输时间、与运行时间等方面时间短、速度快。适应性:该系统专为高校量身定做,对高校有很强的适应性复用性:该系统的功能和大多数高校基本吻合,所以可以在大多数高校中复用灵活性:该系统可以在大多数WindowsXP等以上版本上应用,与微软的office办公软件相结合,可以打印该系统中的成绩、学生表等,该系统采用团队分块制作,以后维护、改方便2.2软件结构3.程序描述3.1系统主界面(Main)设计说明3.1.1程序描述主模块负责应程序的主界面,由他调用其他模块。因此主模块应该具有操作性好、界面清晰的特点,使用户能够很方便地找到所需功能。根据功能需求分析的结果,主界面模块应该由管理员系统、教师系统、学生系统组成。可以通过点击菜单项进入相应的功能模块。3.1.2功能输入:窗体加载。处理:1)执行相应的操作过程。2)将调用的子窗体在屏幕上显示出来或者执行操作。3)当选择系统退出时,关闭窗体。输出:相应的操作结果。3.1.3性能精度:一定要点击正确控件区域;灵活性:图形界面容易操作;时间特性:响应时间约0.1s。3.1.4输人项用户点击相应的模块条列表。3.1.5输出项数据库内的学生信息。3.1.6限制条件是否连接好数据库及系统资源是否空闲。3.1.7测试计划详细测试计划在测试计划说明书中所述。3.2主界面设计说明管理员系统,教师系统,学生系统三部分。3.3程序描述a)管理员系统b)教师系统c)学生系统3.3管理员系统设计说明管理员系统分为:个人信息、基础信息管理、课程管理、学生成绩查看、公告管理、内部论坛、考试试题维护、安全退出系统。3.3.3程序描述a)个人信息b)基础信息管理c)课程管理d)学生成绩查看e)公告管理F)内部论坛g)考试试题维护h)安全退出系统3.4教师系统设计说明个人信息学生成绩管理学生试题下载公告管理内部论坛安全退出系统3.5学生系统设计说明个人信息系统公告我的成绩考试试题下载上传试题内部论坛安全退出系统3.6登录管理设计说明3.7重要源代码说明(1)com.util包util.javapackagecom.util;importjava.text.ParseException;importjava.util.Date;importjava.util.GregorianCalendar;publicclassUtil{ publicstaticDatenewDate(Strings)throwsParseException{ java.text.SimpleDateFormatsdf=newjava.text.SimpleDateFormat( "yyyy-MM-dd"); Datedate=newDate(); date=sdf.parse(s); returndate; } publicstaticDatenewDate1(Strings)throwsParseException{ java.text.SimpleDateFormatsdf=newjava.text.SimpleDateFormat( "yyyy-MM-ddHH:mm"); Datedate=newDate(); date=sdf.parse(s); returndate; } publicstaticDateFormatFullDate(Strings)throwsParseException{ java.text.SimpleDateFormatsdf=newjava.text.SimpleDateFormat( "yyyy-MM-ddHH:mm:ss"); Datedate=newDate(); date=sdf.parse(s); returndate; } publicstaticStringsplitDate(Dated){ java.text.SimpleDateFormatsdf=newjava.text.SimpleDateFormat( "yyyy-MM-dd"); returnsdf.format(d); } publicstaticStringsplitDate1(Dated){ java.text.SimpleDateFormatsdf=newjava.text.SimpleDateFormat( "yyyy年MM月dd日"); returnsdf.format(d); } /** *将字符串截短,取前n个字符,英文算半个字符。 * *@paramorignalString *原字符串 *@paramlength *长度 *@paramchopedString *超过部分的表示字符串 *@return截取的字符串 */ publicstaticStringchop(StringorignalString,doublelength, StringchopedString){ if(orignalString==null||orignalString.length()==0){ returnorignalString; } orignalString=orignalString.replaceAll("",""); if(orignalString.length()<length){ returnorignalString; } StringBufferbuffer=newStringBuffer((int)length); length=length*2; intcount=0; intstringLength=orignalString.length(); inti=0; for(;count<length&&i<stringLength;i++){ charc=orignalString.charAt(i); if(c<'\u00ff'){ count++; }else{ count+=2; } buffer.append(c); } if(i<stringLength){ buffer.append(chopedString); } returnbuffer.toString(); } publicstaticlonggetPrimeKey(){ GregorianCalendarcalendar=newGregorianCalendar(); returncalendar.getTimeInMillis(); } publicstaticlongstringToLong(Stringsource){ returnLong.parseLong(source); } /* *publicstaticvoidmain(String[]args){for(inti=0;i<10;i++){ *System.out.println(Util.getPrimeKey());}} */}}(2)com.service包kechengService.javapackagecom.service;importjava.util.List;importcom.dao.TKechengDAO;publicclasskechengService{ privateTKechengDAOkechengDAO; publicTKechengDAOgetKechengDAO(){ returnkechengDAO; } publicvoidsetKechengDAO(TKechengDAOkechengDAO){ this.kechengDAO=kechengDAO; } publicList<?>findAllKecheng(){ Stringsql="fromTKechengwherekechengDel='no'"; returnkechengDAO.getHibernateTemplate().find(sql); } publicStringfindKechengName(intkechengId){ returnkechengDAO.findById(kechengId).getKechengName(); }}longinService.javapackagecom.service;importjava.util.List;importjavax.servlet.http.HttpSession;importorg.directwebremoting.WebContext;importorg.directwebremoting.WebContextFactory;importcom.dao.TAdminDAO;importcom.dao.TStuDAO;importcom.dao.TTeaDAO;importcom.model.TAdmin;importcom.model.TStu;importcom.model.TTea;publicclassloginService{ privateTAdminDAOadminDAO; privateTTeaDAOteaDAO; privateTStuDAOstuDAO; publicTAdminDAOgetAdminDAO(){ returnadminDAO; } publicvoidsetAdminDAO(TAdminDAOadminDAO){ this.adminDAO=adminDAO; } publicTStuDAOgetStuDAO(){ returnstuDAO; } publicvoidsetStuDAO(TStuDAOstuDAO){ this.stuDAO=stuDAO; } publicTTeaDAOgetTeaDAO(){ returnteaDAO; } publicvoidsetTeaDAO(TTeaDAOteaDAO){ this.teaDAO=teaDAO; } publicStringlogin(StringuserName,StringuserPw,intuserType){ System.out.println("userType"+userType); try{ Thread.sleep(700); }catch(InterruptedExceptione){ e.printStackTrace(); } Stringresult=null; if(userType==0)//系统管理员登陆 { Stringsql="fromTAdminwhereuserName=?anduserPw=?"; Object[]con={userName,userPw}; List<?>adminList=adminDAO.getHibernateTemplate().find(sql,con); if(adminList.size()==0){ result="no"; }else{ WebContextctx=WebContextFactory.get(); HttpSessionsession=ctx.getSession(); TAdminadmin=(TAdmin)adminList.get(0); session.setAttribute("userType",0); session.setAttribute("admin",admin); result="yes"; } } if(userType==1)//老师登陆 { Stringsql="fromTTeawhereteaDel='no'andloginName=?andloginPw=?"; Object[]con={userName,userPw}; List<?>teaList=teaDAO.getHibernateTemplate().find(sql,con); if(teaList.size()==0){ result="no"; }else{ WebContextctx=WebContextFactory.get(); HttpSessionsession=ctx.getSession(); TTeatea=(TTea)teaList.get(0); session.setAttribute("userType",1); session.setAttribute("tea",tea); result="yes"; } } if(userType==2)//学生登陆 { Stringsql="fromTStuwherestuDel='no'andloginName=?andloginPw=?"; Object[]con={userName,userPw}; List<?>stuList=stuDAO.getHibernateTemplate().find(sql,con); if(stuList.size()==0){ result="no"; }else{ WebContextctx=WebContextFactory.get(); HttpSessionsession=ctx.getSession(); TStustu=(TStu)stuList.get(0); session.setAttribute("userType",2); session.setAttribute("stu",stu); result="yes"; } } returnresult; } publicStringadminPwEdit(StringuserPwNew){ try{ Thread.sleep(1000); }catch(InterruptedExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } WebContextctx=WebContextFactory.get(); HttpSessionsession=ctx.getSession(); TAdminadmin=(TAdmin)session.getAttribute("admin"); admin.setUserPw(userPwNew); adminDAO.getHibernateTemplate().update(admin); session.setAttribute("admin",admin); return"yes"; }}tongyongService.javapackagecom.service;importjava.util.List;importcom.dao.TBanjiDAO;importcom.dao.TXibieDAO;importcom.dao.TXuyuanDAO;importcom.dao.TZhuanyeDAO;publicclasstongyongService{ privateTXuyuanDAOxuyuanDAO; privateTXibieDAOxibieDAO; privateTZhuanyeDAOzhuanyeDAO; privateTBanjiDAObanjiDAO; publicList<?>findAllXuyuan(){ Stringsql="fromTXuyuanwherexuyuanDel='no'"; List<?>xuyuanList=xuyuanDAO.getHibernateTemplate().find(sql); returnxuyuanList; } publicList<?>findAllXibei(intxuyuanId){ Stringsql="fromTXibiewherexibieDel='no'andxuyuanId="+xuyuanId; List<?>xibieList=xibieDAO.getHibernateTemplate().find(sql); returnxibieList; } publicList<?>findAllZhuanye(intxibieId){ Stringsql="fromTZhuanyewherezhuanyeDel='no'andxibieId=" +xibieId; List<?>zhuanyeList=zhuanyeDAO.getHibernateTemplate().find(sql); returnzhuanyeList; } publicList<?>findAllBanji(intzhuanyeId){ Stringsql="fromTBanjiwherebanjiDel='no'andzhuanyeId=" +zhuanyeId; List<?>banjiList=banjiDAO.getHibernateTemplate().find(sql); returnbanjiList; } publicTBanjiDAOgetBanjiDAO(){ returnbanjiDAO; } publicvoidsetBanjiDAO(TBanjiDAObanjiDAO){ this.banjiDAO=banjiDAO; } publicTXibieDAOgetXibieDAO(){ returnxibieDAO; } publicvoidsetXibieDAO(TXibieDAOxibieDAO){ this.xibieDAO=xibieDAO; } publicTXuyuanDAOgetXuyuanDAO(){ returnxuyuanDAO; } publicvoidsetXuyuanDAO(TXuyuanDAOxuyuanDAO){ this.xuyuanDAO=xuyuanDAO; } publicTZhuanyeDAOgetZhuanyeDAO(){ returnzhuanyeDAO; } publicvoidsetZhuanyeDAO(TZhuanyeDAOzhuanyeDAO){ this.zhuanyeDAO=zhuanyeDAO; }}(3)com.model包TAdmin.javapackagecom.model;/***TAdmingeneratedbyMyEclipsePersistenceTools*/publicclassTAdminimplementsjava.io.Serializable{ /** * */ privatestaticfinallongserialVersionUID=1L; privateIntegerid; privateStringuserName; privateStringuserPw; /**defaultconstructor*/ publicTAdmin(){ } /**fullconstructor*/ publicTAdmin(StringuserName,StringuserPw){ this.userName=userName; this.userPw=userPw; } publicIntegergetId(){ returnthis.id; } publicvoidsetId(Integerid){ this.id=id; } publicStringgetUserName(){ returnthis.userName; } publicvoidsetUserName(StringuserName){ this.userName=userName; } publicStringgetUserPw(){ returnthis.userPw; } publicvoidsetUserPw(StringuserPw){ this.userPw=userPw; }}(4)com.dao包TAdminDAO.javapackagecom.dao;importjava.util.List;importmons.logging.Log;importmons.logging.LogFactory;importorg.hibernate.LockMode;importorg.springframework.context.ApplicationContext;importorg.springframework.orm.hibernate3.support.HibernateDaoSupport;importcom.model.TAdmin;/***Dataaccessobject(DAO)fordomainmodelclassTAdmin.**@seecom.model.TAdmin*@authorMyEclipsePersistenceTools*/publicclassTAdminDAOextendsHibernateDaoSupport{ privatestaticfinalLoglog=LogFactory.getLog(TAdminDAO.class); publicstaticfinalStringUSER_NAME="userName"; publicstaticfinalStringUSER_PW="userPw"; protectedvoidinitDao(){ } publicvoidsave(TAdmintransientInstance){ log.debug("savingTAdmininstance"); try{ getHibernateTemplate().save(transientInstance); log.debug("savesuccessful"); }catch(RuntimeExceptionre){ log.error("savefailed",re); throwre; } } publicvoiddelete(TAdminpersistentInstance){ log.debug("deletingTAdmininstance"); try{ getHibernateTemplate().delete(persistentInstance); log.debug("deletesuccessful"); }catch(RuntimeExceptionre){ log.error("deletefailed",re); throwre; } } publicTAdminfindById(java.lang.Integerid){ log.debug("gettingTAdmininstancewithid:"+id); try{ TAdmininstance=(TAdmin)getHibernateTemplate().get( "com.model.TAdmin",id); returninstance; }catch(RuntimeExceptionre){ log.error("getfailed",re); throwre; } } publicList<?>findByExample(TAdmininstance){ log.debug("findingTAdmininstancebyexample"); try{ List<?>results=getHibernateTemplate().findByExample(instance); log.debug("findbyexamplesuccessful,resultsize:" +results.size()); returnresults; }catch(RuntimeExceptionre){ log.error("findbyexamplefailed",re); throwre; } } publicList<?>findByProperty(StringpropertyName,Objectvalue){ log.debug("findingTAdmininstancewithproperty:"+propertyName +",value:"+value); try{ StringqueryString="fromTAdminasmodelwheremodel." +propertyName+"=?"; returngetHibernateTemplate().find(queryString,value); }catch(RuntimeExceptionre){ log.error("findbypropertynamefailed",re); throwre; } } publicList<?>findByUserName(ObjectuserName){ returnfindByProperty(USER_NAME,userName); } publicList<?>findByUserPw(ObjectuserPw){ returnfindByProperty(USER_PW,userPw); } publicList<?>findAll(){ log.debug("findingallTAdmininstances"); try{ StringqueryString="fromTAdmin"; returngetHibernateTemplate().find(queryString); }catch(RuntimeExceptionre){ log.error("findallfailed",re); throwre; } } publicTAdminmerge(TAdmindetachedInstance){ log.debug("mergingTAdmininstance"); try{ TAdminresult=(TAdmin)getHibernateTemplate().merge( detachedInstance); log.debug("mergesuccessful"); returnresult; }catch(RuntimeExceptionre){ log.error("mergefailed",re); throwre; } } publicvoidattachDirty(TAdmininstance){ log.debug("attachingdirtyTAdmininstance"); try{ getHibernateTemplate().saveOrUpdate(instance); log.debug("attachsuccessful"); }catch(RuntimeExceptionre){ log.error("attachfailed",re); throwre; } } publicvoidattachClean(TAdmininstance){ log.debug("attachingcleanTAdmininstance"); try{ getHibernateTemplate().lock(instance,LockMode.NONE); log.debug("attachsuccessful"); }catch(RuntimeExceptionre){ log.error("attachfailed",re); throwre; } } publicstaticTAdminDAOgetFromApplicationContext(ApplicationContextctx){ return(TAdminDAO)ctx.getBean("TAdminDAO"); }}(5)com.action包banjiAction.javapackagecom.action;importjava.util.List;importjava.util.Map;importorg.apache.struts2.ServletActionContext;importcom.dao.TBanjiDAO;importcom.dao.TStuDAO;importcom.dao.TXibieDAO;importcom.dao.TXuyuanDAO;importcom.dao.TZhuanyeDAO;importcom.model.TBanji;importcom.model.TXibie;importcom.model.TZhuanye;importcom.opensymphony.xwork2.ActionSupport;publicclassbanjiActionextendsActionSupport{ privatestaticfinallongserialVersionUID=1L; privateintbanjiId; privateStringbanjiBianhao; privateStringbanjiName; privateStringbanjiRuxuenianfen; privateintzhuanyeId; privateStringmessage; privateStringpath; privateTXuyuanDAOxuyuanDAO; privateTXibieDAOxibieDAO; privateTZhuanyeDAOzhuanyeDAO; privateTBanjiDAObanjiDAO; privateTStuDAOstuDAO; publicStringbanjiMana(){ Stringsql="fromTBanjiwherebanjiDel='no'andzhuanyeId=" +zhuanyeId; List<?>banjiList=banjiDAO.getHibernateTemplate().find(sql); Map<String,Object>request=extracted(); request.put("banjiList",banjiList); request.put("zhuanyeId",zhuanyeId); returnActionSupport.SUCCESS; } @SuppressWarnings("unchecked") privateMap<String,Object>extracted(){ return(Map<String,Object>)ServletActionContext.getContext().get( "request"); } publicStringbanjiAdd(){ TBanjibanji=newTBanji(); banji.setBanjiBianhao(banjiBianhao); banji.setBanjiName(banjiName); banji.setBanjiRuxuenianfen(banjiRuxuenianfen); banji.setBanjiDel("no"); banji.setZhuanyeId(zhuanyeId); TZhuanyezhuanye=zhuanyeDAO.findById(zhuanyeId); TXibiexibie=xibieDAO.findById(zhuanye.getXibieId()); banji.setXibieId(zhuanye.getXibieId()); banji.setXuyuanId(xibie.getXuyuanId()); banjiDAO.save(banji); this.setMessage("添加成功"); this.setPath("xuyuanMana.action"); return"succeed"; } publicStringbanjiDel(){ Stringsql="fromTStuwherestuDel='no'andbanjiId="+banjiId; List<?>stuList=stuDAO.getHibernateTemplate().find(sql); if(stuList.size()>0){ this.setMessage("请先删除此班级的学生"); this.setPath("xuyuanMana.action"); }else{ TBanjibanji=banjiDAO.findById(banjiId); banji.setBanjiDel("yes"); banjiDAO.attachDirty(banji); this.setMessage("删除成功"); this.setPath("xuyuanMana.action"); } return"succeed"; } @SuppressWarnings("rawtypes") publicStringbanjiEditPre(){ TBanjibanji=banjiDAO.findById(banjiId); @SuppressWarnings("unchecked") Map<String,TBanji>request=(Map)ServletActionContext.getContext() .get("request"); request.put("banji",banji); returnActionSupport.SUCCESS; } publicStringbanjiEdit(){ TBanjibanji=banjiDAO.findById(banjiId); banji.setBanjiBianhao(banjiBianhao); banji.setBanjiName(banjiName); banji.setBanjiRuxuenianfen(banjiRuxuenianfen); banjiDAO.attachDirty(banji); this.setMessage("更细成功"); this.setPath("xuyuanMana.action"); return"succeed"; } publicStringgetBanjiBianhao(){ returnbanjiBianhao; } publicvoidsetBanjiBianhao(StringbanjiBianhao){ this.banjiBianhao=banjiBianhao; } publicTBanjiDAOgetBanjiDAO(){ returnbanjiDAO; } publicvoidsetBanjiDAO(TBanjiDAObanjiDAO){ this.banjiDAO=banjiDAO; } publicintgetBanjiId(){ returnbanjiId; } publicvoidsetBanjiId(intbanjiId){ this.banjiId=banjiId; } publicStringgetBanjiName(){ returnbanjiName; } publicvoidsetBanjiName(StringbanjiName){ this.banjiName=banjiName; } publicStringgetBanjiRuxuenianfen(){ returnbanjiRuxuenianfen; } publicvoidsetBanjiRuxuenianfen(StringbanjiRuxuenianfen){ this.banjiRuxuenianfen=banjiRuxuenianfen; } publicStringgetMessage(){ returnmessage; } publicvoidsetMessage(Stringmessage){ this.message=message; } publicStringgetPath(){ returnpath; } publicvoidsetPath(Stringpath){ this.path=path; } publicTStuDAOgetStuDAO(){ returnstuDAO; } publicvoidsetStuDAO(TStuDAOstuDAO){ this.stuDAO=stuDAO; } publicTXibieDAOgetXibieDAO(){ returnxibieDAO; } publicvoidsetXibieDAO(TXibieDAOxibieDAO){ this.xibieDAO=xibieDAO; } publicTXuyuanDAOgetXuyuanDAO(){ returnxuyuanDAO; } publicvoidsetXuyuanDAO(TXuyuanDA

温馨提示

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

评论

0/150

提交评论