实例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付。在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高开发效率和质量。
2.5 关于Hibernate 2.5.1 Hibernate简介
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
2.5.2 Hibernate的优势是什么
Hibernate封装了jdbc,简化了很多重复性代码,它简化了DAO层编码工作,使开发更对象化了,而且Hibernate有很好的移植性,支持各种数据库,如果换个数据库只要在配置文件中变换配置就可以了,不用改变hibernate代码。由于hibernate操作的是纯粹的(pojo)java类,没有实现任何接口,没有侵入性,所以说它是一个轻量级框架,使用起来非常方便。
2.6 关于Mysql
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。它使用系统核心提供的多线程机制提供完全的多线程运行模式,提供了面向C、C++、Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。
第 8 页
目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
2.7 Tomcat服务器 2.7.1 Tomcat服务器简介
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。Tomcat中采用了Servlet容器:Catalina,完整的实现了Servlet2.3和Jsp1.2规范。Tomcat提供了各种平台的版本供下载,可以从其官方网站上下载其源代码版或者二进制版。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。
2.7.2 Tomcat的特点与优势
在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。当然本地也可以。
2.7.3 Tomcat服务器的安装和配置
在开始安装之前,先准备J2SDK和TOMCAT两个软件,如果已经安装了J2SDK,就只需TOMCAT即可。
表2-1环境变量设置参考数据 变量名 变量值 CATALINA_HOME D:\\Program Files\\tomcat6.0 CLASSPATH .;%JAVA_HOME%\\lib;êTALINA_HOME%\\lib 第 9 页
2.8 关于B/S开发模式 2.8.1 B/S与C/S有什么区别
B/S 是指浏览器和服务器端,在客户机端不用装专门的软件,只要一个浏览器即可.而C/S是指客户机和服务器,在客户机端必须装客户端软件后,才能访问服务器如sql server 2000软件体系结构定义了软件的局部和总体计算部件的构成,以及这些部件之间的相互作用关系。部件包括诸如服务器、客户、数据库、过滤器、程序包、过程、子程序等一切软件的组成成份。相互作用关系包括诸如过程调用、共享变量访问、消息传递等。相互作用也包括具有十分复杂的语义和构成关系,诸如客户/服务器的访问协议、数据库的访问协议网络的传输协议、异步事件的映射等,除了描述系统的构成和结构关系外,在系统的功能需求方面,体系结构还表达了系统需求和构成之间的对应关系。
2.8.1 为什么使用B/S开发模式
伴随着Internet的迅速发展,计算机技术正在由基于C/S(client/ Server)模式的应用系统转变为基于B/S模式的应用系统。过去,网络软件的开发都采用C/S(client)模式,在这种模式下,主要的业务逻辑都集中于用户端程序,因此,必然导致以下问题:
1.系统安装、调试、维护和升级困难。由于用户端的硬件配置可能存在差异,软件环能各不相同,因此,在安装时,必须对每一个用户端分别进行配置,同样,在软件升级时也要对用户端分别处理。
2.在整个系统中,业务逻辑和用户界面都集中到了用户端,必然会增加安全隐患。
与此同时B/S模式带来了巨大的好处:
1.开发成本及维护成本降低。由于B/S架构管理软件只安装在服务器端(Server)上,即应用程序在部署、升级、维护时,只需要在服务器端进行配置
就可以了,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的用户端只有浏览器,网络管理人员只需要做硬件维护。
2.良好的安全性能,防火墙技术可以保证后台数据库的安全性。所有的配置工作都集中在服务器端且所有用户端请求都是通过DBMS来访问数据库,从而大大减少了数据直接暴露的风险。
第 10 页
3 系统需求分析和总体设计
3.1 系统的功能需求
图3-1 系统结构图
如图3-1所示本系统总体分为四个部分,分别为:用户管理、试题管理、试卷管理、成绩管理。
1.用户管理:这部分又分为学生管理与教师管理,分别对学生与教师的相关信息进行添加、修改、删除等操作。
2.试题管理:这部分主要对试题的相关信息进行添加、修改、删除等操作。 3.试卷管理:这部分主要对试卷的相关信息进行添加、修改、删除等操作。 4.成绩管理:这部分主要实现用户查询成绩的功能。
3.2 系统角色及其功能分析
基于以上需求,本系统主要面向三个对象:教师、考生、管理员,管理员的功能主要完成对教师、考生、试题、试卷增删改查操作,这个模块主要由组内的其他成员完成,本设计主要完成了学生与教师在在线考试系统的基本功能:
1.考生:考生通过一系列程序获得在系统管理员统一分配帐号和初始密码后,可以修改自己的密码和相关信息进行修改;进入系统后可以完成在线练习、
第 11 页