《基于 Struts2 和 Hibernate 框架的学生信
息管理系统的设计与实现》
课程名称: Web
框架技术
任课教师: 张 俊
姓 名: 彭赛赛
学 号: 311509040224
班 级: 网络
15-2
1 / 33
目录
1、引言.......................................................................................................................................... 2
1.1、开发背景....................................................................................................................... 2
1.2、需求分析....................................................................................................................... 3
1.3、开发环境....................................................................................................................... 3
2、基础理论.................................................................................................................................. 4
2.1、Struts2 概述................................................................................................................... 4
2.1.1、MVC 简介............................................................................................................ 4
2.1.2、Struts2 简介........................................................................................................ 5
2.2Hibernate 介绍.................................................................................................................. 6
2.2.1 基础概要................................................................................................................ 7
2.2.2 数据库操作............................................................................................................ 8
2.2.3 ORM 对象关系映射............................................................................................... 9
3、功能设计.................................................................................................................................. 9
3.1 实验要求................................................................................................................... 9
3.2 实验目的................................................................................................................. 10
4、系统实现................................................................................................................................ 11
4.1 实验思路................................................................................................................. 11
4.2 实验步骤................................................................................................................. 12
4.3 重要代码................................................................................................................. 17
5、运行效果截图........................................................................................................................ 32
6、总结........................................................................................................................................ 33
1、引言
1.1、开发背景
java 课程设计是将 java 理论教学与实践环节相结合的关键步骤,通过该
实践教学环节,使学生进一步学习和巩固 java 课程的核心内容,加深对面向对
象程序设计思想的正确理解;并且熟练掌握 java 程序设计技能及上机调试方法,
2 / 33
为今后学习其他专业课程打好基础;并能具备一定的计算机程序设计能力,培
养独立分析问题、解决问题及查阅资料、获取新知识的能力,以适应技术不断
更新的计算机行业特点。
1.2、需求分析
该学生信息管理系统涉及到学生、系统管理员。设置一个系统管理员对系
统进行管理。所有用户需输入账号、密码登录进入系统;管理员进入系统后可
对学生、班级、课程进行增删改查操作;学生进入系统,查看成绩、查看和修
改自己的信息;老师进入系统后,对自己这门课程的学生设置课程成绩、查看
和修改自己的信息,查看学生的信息和成绩、以及统计分析学生的成绩;
1.3、开发环境
系统环境:Windows10
开发工具:MyEclipse2014
Java 版本:JDK 1.8
服务器:tomcat 7.0
数据库:Oracle
系统采用技术:Jsp+Jdbc+Struts2+Hibernate+jQuery+OOP
3 / 33
2、基础理论
2.1、Struts2 概述
Struts2 其实并不是一个陌生的 Web 框架,Struts2 是以 Webwork 的设
计思想为核心,吸收了 Struts1 的优点,因此,可以认为 Struts2 是 Struts1
和 Webwork 结合的产物。
2.1.1、MVC 简介
Struts2 是一个兼容 Struts1 和 WebWork 的 MVC 框架,既然,提到了
MVC 框架,就不得不对 MVC 框架做一个简单介绍,仅限于简单介绍,如果,
想了解更多的 MVC 的知识可以查看相关的文档,或者找一本 Struts1 的书籍,
相信上面关于 MVC 的篇幅不会很少。言归正传,其实,Java 目前出现的这些
框架而言,其最终目的都是为了接触耦合,不论是 Spring、Hibernate 或
MVC 框架,目的都是为了接触耦合增加复用。MVC 接触的是 View 和 Model
间的耦合。
MVC 包含三个基础部分:Model、View 和 Controller,这三个部分以最
小的耦合协同工作,以增加程序的可扩展性和可维护性。各个部分的实现技术
可以总结如下:
1)Model:JavaBean、EJB 的 EntityBean
4 / 33
2)View:JSP、Struts 的 TagLib
3)Controller:Struts 的 ActionServlet、Action
概括起来 MVC 的优点主要有一下方面:
1)多个视图可以对应一个模型。按 MVC 设计模式,一个模型对应多个视
图,可以减少代码的复制及代码的维护量,一旦模型发生改变,也易于维护
2)模型返回的数据与显示逻辑分离。模型数据可以应用任何的显示技术,
例如,使用 JSP 页面、Velocity 模板或者直接产生 Excel 文档等
3)应用被分隔为三层,降低了各层之间的耦合,提供了应用的可扩展性
4)控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起,
完成不同的请求。因此,控制层可以说是包含了用户请求权限的概念
5)MVC 更符合软件工程化管理的精神。不同的层各司其职,每一层的组
件具有相同的特征,有利于通过工程化和工具化产生管理程序代码
2.1.2、Struts2 简介
Struts2 看似是从 Struts1 发展而来,但实际上 Struts2 与 Struts1 在框
架的设计思想上面还是有很大的区别,Struts2 是以 WebWork 的设计思想为
核心,为什么 Struts2 不沿用 Struts1 的设计思想,毕竟 Struts1 在目前的企
业应用中还是有非常大的市场在的,那么,来看下 Struts1 的一些缺点吧:
1)支持的表现层技术单一
2)与 Servlet API 严重耦合,这点可以从 Action 的 Execute 的方法声明
里面就可以看的出来
5 / 33