学生成绩和课程管理系统 阜阳师范学院
学生成绩和课程管理系统
学生:李方阳 学号:200620901132 指导老师:刘冬冬
摘要:本系统使用了 MVC 模式,Struts 和 Hibernate 框架,说明了如何将两者整合起来更有利于 web 系统
开发,以学生成绩和课程管理系统为例,用 Struts 构建整体框架,Hibernate 实现数据持久层,详细阐述了
基于 Struts+Hibernate 框架开发的学生成绩和课程管理系统。这两者的结合很大的提高了系统的开发效率,
使得系统更易于维护,可重用性更高,可移植性更好。
关键字:Jsp,Struts,Hibernate ,MVC模式
1
学生成绩和课程管理系统 阜阳师范学院
目录
第一章 引言.................................................................................................................................3
第一节 JAVA 语言和开发工具的介绍..........................................................................................3
一、JAVA 语言的特点..................................................................................................................3
二、J2EE 的简介...........................................................................................................................3
三、ECLIPSE 的特点.....................................................................................................................4
四、TOMCAT 的特点.....................................................................................................................4
第二节 框架的概述.....................................................................................................................4
一、JSP 的概述.............................................................................................................................4
二、SERVLET 的概述....................................................................................................................5
三、STRUTS 的概述......................................................................................................................5
四、MVC 的概述..........................................................................................................................6
五、HIBERNATE 的概述................................................................................................................7
第二章 学生成绩和课程管理系统详细设计..............................................................................7
第一节 需求分析.........................................................................................................................7
第二节 总体设计.........................................................................................................................8
第三节 功能模块设计...............................................................................................................10
一、登陆模块.............................................................................................................................10
二、学生模块.............................................................................................................................10
三、教师模块.............................................................................................................................11
四、管理员模块.........................................................................................................................11
第四节 数据库的实现...............................................................................................................12
一、管理员表(ADMIN)...............................................................................................................12
二、学生表(STUDENT)...............................................................................................................13
三、教师表(TEACHER)...............................................................................................................13
四、课程表(COURSE)............................................................................................................14
五、班级表(CLASSES)................................................................................................................14
六、综合表(ENROL)..............................................................................................................15
七、表间关系图.........................................................................................................................16
第三章 基于 MVC 架构的系统实现.........................................................................................16
第一节 页面展示层...................................................................................................................17
第二节 业务逻辑层...................................................................................................................19
一、DAO 层部分实例和代码:...............................................................................................20
二、部分源代码:.......................................................................................................................20
第三节 控制处理层...................................................................................................................26
一、STRUTS—CONFIG 的配置....................................................................................................26
二、各种 ACTION.......................................................................................................................28
二、部分源代码:.......................................................................................................................29
第四章 测试阶段.......................................................................................................................30
第一节 对数据库的测试...........................................................................................................30
第二节 对系统整体功能的测试................................................................................................30
第三节 测试总结.......................................................................................................................30
第五章 结束语...........................................................................................................................30
2
学生成绩和课程管理系统 阜阳师范学院
参考文献.................................................................................................................................... 31
ABSTRACT:..................................................................................................................................31
第一章 引言
第一节 java 语言和开发工具的介绍
一、java 语言的特点
Java 语 言 是 一 种 优 秀 的 编 程 语 言 。 它 最 他 的 优 点 就 是 与 平 台 无 关 , 在
Windows9x、WindowsNT、Solaris、Linux、MacOS 以及其它平台上,都可以使用相同的代
码。“一次编写,到处运行”的特点,使其在互联网上被广泛应用。
基于 Java 的 Servlet 虽然不能利用 COM 组件,ASP 也不能利用 JavaBean 和 EJB,但服
务器端的 Java 技术是现在最先进和最完美的技术之一,其优点为:
(一)与平台无关
(二)效率高
(三)能够访问所有的 Java API
(四)可以利用面向对象程序设计思想中所提供的所有重用机制
二、j2ee 的简介
J2EE(Java 2 Platform Enterprise Edition)是一种利用 Java 2 平台来简化企业
解决方案的开发、部署和管理相关的复杂问题的体系结构,J2EE 为搭建具有可伸缩性、灵
活性、易维护性的商务系统提供了良好的机制。J2EE 技术的基础就是核心 Java 平台或
Java 2 平台的标准版,J2EE 不仅巩固了标准版中的许多优点,例如"编写一次、随处运
行"的特性、方便存取数据库的 JDBC API 以及能够在 Internet 应用中保护数据的安全模
式 等 , 同 时 还 提 供 了 对 EJB ( Enterprise JavaBeans ) 、 Java Servlets
API、JSP(Java Server Pages)以及 XML 技术的全面支持。其最终目的就是成为一个
能够使企业开发者大幅缩短投放市场时间的体系结构。J2EE 使用多层的分布式应用模型,
应用逻辑按功能划分为组件,各个应用组件根据他们所在的层分布在不同的机器上。典型
的 J2EE 的四层结构:运行在客户端机器上的客户层组件;运行在 J2EE 服务器上的 Web 层
组件;运行在 J2EE 服务器上的业务逻辑层组件 ;运行在 EIS
服务器上的企业信息系统
(Enterprise information system) 层 软 件 。 J2EE 的 核 心 API 与 组 件 有 : JDBC(Java
Database Connectivity--java 数 据 库 连 接 ) 、 JNDI(Java Name and Directory
Interface--Java 命 名 与 目 录 接 口 ) 、 EJB(Enterprise JavaBean-- 企 业 级
JavaBean) 、 RMI(Remote Method Invoke-- 远 程 方 法 调 用 ) 、 JSP(Java Server
3
学生成绩和课程管理系统 阜阳师范学院
Pages) 、 Java Servlet 、 XML(Extensible Markup Language-- 可 扩 展 置 标 语 言 ) 、
JMS(Java Message Service-- Java 消息服务)、JTA(Java Transaction API--Java 事物
API)、JTS(Java Transaction Service-- Java 事务服务)、JavaMail、JAF(JavaBeans
Activation Framework)。
三、eclipse 的特点
Eclipse 是 Apache Software Foundation 公司出品的开发工具,在众多的开发工
具中,我为什么要选择 Eclipse 呢?因为 Eclipse 具有其它开发工具所没有的优点!具体
介绍如下:
(一)开发的高效
(二)语言的高效
(三)编译的高效
(四)执行的高效
(五)维护的高效
四、tomcat 的特点
Tomcat 是一个免费的开源的 Serlvet 容器,它是 Apache 基金会的 Jakarta 项目中的一个核
心项目,由 Apache,Sun 和其它一些公司及个人共同开发而成。与传统的桌面应用程序不
同,Tomcat 中的应用程序是一个 WAR(Web Archive)文件。WAR 是 Sun 提出的一种 Web
应用程序格式,与 JAR 类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结
构来组织:通常其根目录下包含有 Html 和 Jsp 文件或者包含这两种文件的目录,另外还会
有一个 WEB-INF 目录,这个目录很重要。通常在 WEB-INF 目录下有一个 web.xml 文件和
一个 classes 目录,web.xml 是这个应用的配置文件,而 classes 目录下则包含编译好的
Servlet 类和 Jsp 或 Servlet 所依赖的其它类(如 JavaBean)。通常这些所依赖的类也可以打
包成 JAR 放到 WEB-INF 下的 lib 目录下,当然也可以放到系统的 CLASSPATH 中,但那样
移植和管理起来不方便。基于 Tomcat 的开发其实主要是 Jsp 和 Servlet 的开发,开发 Jsp 和
Servlet 非常简单,你可以用普通的文本编辑器或者 IDE,然后将其打包成 WAR 即可.
第二节 框架的概述
一、jsp 的概述
JavaServerPages (JSP)技术提供了一种简单快速的方法来创建显示动态生成内容的
Web 页面。由业界处于领先地位的 Sun 公司制定了相关的 JSP 技术规范,该规范定义了如
何在服务器和 JSP 页面间进行交互,还描述了页面的格式和语法。
4
学生成绩和课程管理系统 阜阳师范学院
JSP 页面使用 XML 标签和 scriptlets(一种使用 Java 语言编写的脚本代码),封装了生成页
面内容的逻辑。它将各种格式的标签(HTML 或者 XML)直接传递回响应页面。通过这种
方式,JSP 页面实现了页面逻辑与其设计和显示的分离。
JSP 技术是 Java 系列技术的一部分。JSP 页面被编译成 servlet,并可能调用 JavaBeans 组件
(beans)或 Enterprise JavaBeans 组件(企业 beans),以便在服务器端处理。因此, JSP 技
术在构建可升级的基于 web 的应用程 序时扮演了重要角色。
JSP 页面并不局限于任何特定的平台或 web 服务器上。JSP 规范在业界有着广泛的适应性。
JSP 技术是行业协作的结果,它的 设计是开放的,符合行业标准的,并支持绝大多数的服
务器、浏览器和相关工具。由于使用可重用的组件和标签取代了对页面本身脚本语言的严
重依赖,JSP 技 术大大加快了开发的速度。所有 JSP 的实现均支持以 Java 编程语言为基础
的脚本语言,它有与生俱来的可适应性,支持复杂的操作.
二、servlet 的概述
Servlet 是使用 Java Servlet 应用程序设计接口(API)及相关类和方法的 Java 程序。
除了 Java Servlet API,Servlet 还可以使用用以扩展和添加到 API 的 Java 类软件包。Servlet
在启用 Java 的 Web 服务器上或应用服务器上运行并扩展了该服务器的能力。Java servlet 对
于 Web 服务器就好象 Java applet 对于 Web 浏览器。Servlet 装入 Web 服务器并在 Web 服务
器内执行,而 applet 装入 Web 浏览器并在 Web 浏览器内执行。 Java Servlet API 定义了一个
servlet 和 Java 使能的服务器之间的一个标准接口,这使得 Servlets 具有跨服务器平台的特
性。
Servlet 通过创建一个框架来扩展服务器的能力,以提供在 Web 上进行请求和响应服务。当
客户机发送请求至服务器时,服务器可以将请求信息发送给 Servlet,并让 Servlet 建立起服
务器返回给客户机的响应。 当启动 Web 服务器或客户机第一次请求服务时,可以自动装
入 Servlet。装入后, Servlet 继续运行直到其它客户机发出请求。Servlet 的功能涉及范围很
广。
三、struts 的概述
Struts 只是一个 MVC 框架(Framework),用于快速开发 JavaWeb 应用。Struts 实现的
重 点 在 C(Controller) , 包 括 ActionServlet/RequestProcessor 和 我 们 定 制 的 Action, 也 为
V(View)提供了一系列定制标签 (Custom Tag)。但 Struts 几乎没有涉及 M(Model),所以
Struts 可以采用 JAVA 实现的任何形式的商业逻辑。Spring 是一个轻型容器(light-weight
container),其核心是 Bean 工厂(Bean Factory),用以构造我们所需要 的 M(Model)。在此基
5