JAVA EE学生信息管理系统课程设计报告内含工程源码Word文件下载.docx
- 文档编号:16390658
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:26
- 大小:628.59KB
JAVA EE学生信息管理系统课程设计报告内含工程源码Word文件下载.docx
《JAVA EE学生信息管理系统课程设计报告内含工程源码Word文件下载.docx》由会员分享,可在线阅读,更多相关《JAVA EE学生信息管理系统课程设计报告内含工程源码Word文件下载.docx(26页珍藏版)》请在冰豆网上搜索。
2.WEB开发工具
3.EJB开发工具
4.应用程序服务器的连接器
5.JavaEE项目部署服务
6.数据库服务
7.MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
1.2MySql简介
MySQL名字的来历MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。
MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
1.3Tomcat简介
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;
而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
3数据库的连接
本系统采用JDBC连接方式。
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序。
有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。
换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。
同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。
Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。
JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。
作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。
JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。
JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。
Java具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。
所需要的只是Java应用程序与各种不同数据库之间进行对话的方法。
而JDBC正是作为此种用途的机制。
JDBC扩展了Java的功能。
例如,用Java和JDBCAPI可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库。
企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有Windows、Macintosh和UNIX等各种不同的操作系统)。
随着越来越多的程序员开始使用Java编程语言,对从Java中便捷地访问数据库的要求也在日益增加。
MIS管理员们都喜欢Java和JDBC的结合,因为它使信息传播变得容易和经济。
企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。
新程序的开发期很短。
安装和版本控制将大为简化。
程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。
对于商务上的销售信息服务,Java和JDBC可为外部客户提供获取信息更新的更好方法。
一、系统需求分析
1.1功能分析
(1)用户登录:
用户登录(一个界面)通过验证分为管理员,学生,老师登陆三个主页面。
学生信息管理系统采用用户名及密码验证模式,进入学生信息管理系统前,用户必须在登陆页面输入用户名及密码,只有验证通过的用户方可进入学生信息管理系统操作主页面。
(2)学生信息管理:
管理员对学生信息进行删除,查询和修改。
(3)课程信息管理:
管理员也可以进行删除,修改和查询功能,同时学生可以选课和查询该课程成绩,和查询课程成绩。
老师根据所授课程对学生录入成绩
(4)用户管理:
三种用户可进行注销进行切换,可以修改密码
1.2系统结构分析
1.3系统流程分析
通过分析描述,可以很轻松的将系统的运行流程设计出来。
系统运行流程如图所示:
学生信息管理系统流程图如上图所示:
通过对流程的分析,即可进行下一步工作——系统的概要设计。
二、系统概要设计
运用面向对象的设计方法,这个阶段设计一下系统的大体框架。
最直接的方法就是直接将流程图直接映射成为项目文件。
参照上一节的系统流程分析,直接将流程图中的流程变为JSP页面,流程之间测转换则映射成为Action和Struts的导航规则。
系统中所有的数据库相关操作都由Hibernate中的DAO(数据访问对象)类来实现。
由于使用了JSP页面,所以不仅可以使用HTML标签,同时还可以使用JSP中的EL语言和Struts中的标签。
为了更好的配合JAVAEE开发,数据库采用MYSQL。
三、系统详细设计
3.1数据库设计
3.1.1设计原则
(1)密码管理:
学生修改学生查询密码;
教师可以修改查询密码。
(2)每个教师可以查看所有学生的成绩,包括每门课程的成绩、每门课程的平均成绩、每个分数段的成绩。
(3)学生根据自己的学号查询本人的成绩。
(4)管理员可以对学生、老师等信息进行增加、删除、修改等操作。
3.1.2数据库组成
本系统中共用到了7个数据表,如下:
admin表:
记录管理员信息;
teacher表:
记录教师信息;
student表:
记录学生学籍信息;
kechengbiao表:
记录选修课信息;
chegnji表:
记录学生基础课信息;
成绩关联表:
记录学生基础课成绩信息;
选课关联表:
记录学生选课信息。
3.1.3数据库表的结构
字段名
字段描述
是否主键
数据类型
长度
约束
说明
admin_id
管理员ID
是
varchar
20
Notnull
主键
password
密码
否
表3-1admin表
tno
教师号
tpss
tname
教师姓名
sex
性别
jibie
职称
tel
电话号码
表3-2teacher表
name
学生姓名
stu_id
学号
zy
专业
mz
民族
char
10
zzmm
政治面貌
varchan
cym
曾用名
sfz
身份证
csrq
出生日期
jg
籍贯
jkzk
健康状况
rxnf
入学年份
jtdz
家庭地址
50
jtdh
家庭电话
yzbm
邮政编码
lxfs
联系方式
邮件
qtlxfs
其他联系
bz
备注
3-3student表
学期号
cno
课程号
cname
课程名
学分
主讲教师
3-4chengji表
任课教师
星期几
时间
classno
上课教室
表3-5kecheng表
id
自动标识
int
4
成绩
重修成绩
表3-6成绩关联表
表3-7选课关联表
3.2系统模块设计
3.2.1登录模块
为了系统的安全,在进入系统之前首先会出现一个登录模块,用户只有在输入正确的用户名和正确的密码之后,才能进入系统。
用户登录窗体中放置了两个文本框,用来输入用户名和密码;
两个按钮用来确定或者重写登录。
设置三个单选控件,供不同用户登录时选择用户权限,管理员拥有一切权限(包括添加删除和修改以及对用户的管理),教师和学生拥有受限制的权限(如查询及修改密码),提高了数据库的安全性。
登录模块图如下图所示:
3.2.2系统管理模块
3.2.2.1添加用户窗体的创建
进入系统后,将会出现一个主窗体,选择系统管理模块下的添加用户,就可以进入添加用户窗体,可以通过该窗体增加新的用户。
在这个窗体中放置了五个文本框,用来输入用户名、密码出生时间、总学分和备注;
一个下拉列表框和两个单选框用来确定专业和性别;
两个按钮用来确定是否添加用户;
3.2.2.2修改密码窗体的创建
在系统管理模块下,进入修改密码窗体,用户可根据需要修改自己的密码。
在这个窗体中放置了三个文本框,用来输入原始密码、新密码和确认新密码;
两个按钮用来确定是否修改密码。
3.2.3学籍管理模块
3.2.3.1添加学籍信息功能
选择主窗体中学籍管理模块下的添加学籍信息,就可进入添加学籍信息的窗体,在该窗体中我们可以对学生的学号、姓名、性别、出生日期、班号等学生的信息进行添加。
添加的信息将全部存储到数据库中。
在窗体上放置多个文本框和下拉式文本框,用来输入学籍信息;
两个按钮用来确定是否输入学籍信息;
一个按钮用来退出窗体;
多个标签用来提示文本框中需要输入的内容。
3.2.3.2修改学籍信息功能
点击学籍管理模块下的修改学籍信息,就进入修改学籍信息的窗体,在该窗体中我们可以对前面添加的学籍信息进行修改。
由于用户的需求不同,有的是要对学生的信息做个别的改动,有的是需要删除该条记录,所以该窗体同时包括了修改记录的功能和删除记录的功能。
3.2.3.3查询学籍信息功能
进入学籍管理模块下的查询学籍信息窗体,在该窗体中可以对学生的信息进行查询,有三种查询方式。
一方面考虑到简洁的因素,用户可以只设置一种查询方式进行查询;
另一方面又为了避免数据的重复,用户可以输入详细的信息,也就是同时设置多种查询方式进行查询。
进入查询窗体时,会显示出所有学生的学籍信息,如果不设置查询方式就进行查询,是无效查询,系统会给出提示。
在设置好查询方式后,便开始查询,将显示出用户所需的学生的学籍信息。
3.2.4成绩管理模块
3.2.4.1成绩信息管理功能
点击成绩管理模块下的成绩信息浏览,进入成绩信息浏览窗体。
点击工具条中的修改、添加和查询按钮就可分别进入修改成绩信息窗体、添加成绩信息窗体和查询成绩信息窗体。
这三个窗体的界面设置分别类似于学籍管理下修改学籍信息窗体、添加学籍信息窗体和查询学籍信息窗体。
四、系统实现和演示
要明确的是,该项目是一个基于MVC结构的,其中使用Struts2.0作为整个MVC的实现,其中的Action又充当控制器的角色(当然包括了struts.xml配置文件的导航作用),Hibernate3.1作为Model的实现。
现在在MyEclipse10下新建空的web项目,然后在项目根目录src文件夹下建立两个包:
action包用来存放Action类,entity用于存放从hibernate逆向过来的实体类的java文件。
4.1系统Model层实现
由于工程属于数据库先行的方法,因此需要将数据库逆向成为hibernate实体类,hibernate3.1中提供了这样的工具。
在逆向之前,我们需要对我们建立好的数据库在MyEclipse的Hibernate视图下建立一个连接。
方法是,在Hibernate视图,左边DBBrowser鼠标右击->
【new】,然后再弹出的对话框中填写好相关信息,点击【Finish】即新建一个数据库连接。
建立好需要的数据库连接之后,就要为项目添加Hibernate组件了,方法是:
方法是:
在项目上点击鼠标右键->
【MyEclipse】->
【AddHibernatecapabilities……】,然后选择Hibernate版本,这里用的是3.1,然后单击【Finish】完成Hibernate功能的添加。
接下来,就可以着手将数据表逆向到Hibernate实体类了,还是要到数据库
视图,双击打开之前建立好的数据库连接,选择要逆向成为实体类的数据表,鼠标右击->
【HibernateReserverEngineering】,在弹出来的对话框中,选择实体类生成的位置——也就是之前建立的com.entity包。
勾选生成DAO类,其余设置保持默认即可,点击【Finish】完成数据表的逆向,此时再回到工程视图,可以看见生成好的实体类和实体的DAO类。
这里,每一个实体类实际上由三个文件组成:
抽象实体类、具体实体类和实体数据库访问对象(DAO)。
抽象类中包含了数据表的属性和一些抽象的方法,具体实体类中则是方法的具体实现,DAO类则是实现了对数据库记录的操作。
Hibernate已经为DAO类提供了一些常用的方法,而Hibernate自身实际上是用hql语句对数据库进行操作的,如果在使用过程中需要自定义新的数据库操作方法,则可以在对应的DAO文件中编写相应的方法。
到此,Model层就实现了,由于使用了Hibernate,Model的实现变得非常容易。
4.2系统配置和界面
4.2.1界面实现
围绕系统用例,从用例出发来设计所需的Action。
那么按照用例,第一个Action的作用应当是实现用户的登陆,若登陆成功,该Action应当导航到用户登陆成功界面,失败则给出提示信息并停留在登陆页面。
登录页面图如下:
登录页面代码如下:
学生角色登录系统成功后,会出现下面的页面:
页面代码如下:
<
%@pagelanguage="
java"
contentType="
text/html;
charset=utf-8"
%>
%@pageimport="
java.sql.*,com.stuman.*"
errorPage="
errorpage.jsp"
%>
html>
head>
/head>
body>
<
%
Stringstuid=(String)request.getSession().getAttribute("
stuid"
);
if(stuid==null){response.sendRedirect("
login.jsp"
}
Stringroot=request.getContextPath();
br>
center>
您已经成功通过验证!
您可以使用如下服务<
/center>
tablewidth="
58%"
border="
0"
align="
center"
>
tr>
td>
ahref="
%=root%>
/studentAction.do?
method=getDisplayCourse"
选修课程>><
/a>
/td>
method=geCheckmark"
查看成绩 >><
method=getEditStudent&
self=1"
更改信息 >><
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA EE学生信息管理系统课程设计报告内含工程源码 EE 学生 信息管理 系统 课程设计 报告 内含 工程 源码
![提示](https://static.bdocx.com/images/bang_tan.gif)