基于JSP技术的网上选课系统的设计与实现资料下载.pdf
《基于JSP技术的网上选课系统的设计与实现资料下载.pdf》由会员分享,可在线阅读,更多相关《基于JSP技术的网上选课系统的设计与实现资料下载.pdf(4页珍藏版)》请在冰豆网上搜索。
网上选课;
JSP;
B/S模式;
JavaBeans;
Oracle中图分类号:
G434文献标识码:
ADesignandImplementationofCourse2choosingSystemBasedonJSPTechnologyPENGQiao2zhen,YAOLi2wen,DUANLong2zhen,YUANPing(CollegeofInformationEngineering,NanchangUniversity,Nanchang330029,China)Abstract:
Thearticleintroducesthetotaldesignandimplementationprocedureofundergraduatecourse2choosingsystembasedonJSPtechnology.ThesystembasedonB/S32tiertechniquestructureusesApache+TomcatasWebserverandusesOracleasbackgrounddatabase.ThesystemrealizestheOracledatabaseaccessbyJDBC.Keywords:
Web2basedcourseselection;
B/Smode;
Oracle0引言随着Internet技术的日益普及,我国的各大院校也加快了信息化进程,建立了自己的校园网。
这为高校学生管理工作走向数字化、信息化、网络化提供了必备的物质基础。
同时,伴随着素质教育的不断推进,我国高校已普遍建立了学分制度,教学管理工作正在由既定型向开放型过渡。
在技术和需求的推动下,各大院校都准备或已经采用了网络选课系统。
早期的选课系统基本上都是C/S(Client/Server)的网络应用模式。
该模式是人们对主机集中式结构的一次重大改进。
但由于这种模式的系统要求在客户端安装应用程序以完成几乎所有的应用处理逻辑;
另外,C/S模式的每个客户端都必须与数据库保持连接,从而限制了系统支持的用户数量;
所以,能用于网上选课的客户机极其有限。
近几年来,随着我国高校扩大招生规模,在校学生人数急速增长,而学生选课的时间又非常集中,这就使得C/S模式的“瓶颈”问题表现得更为突出。
为了解决以上矛盾,让学生能在校园网的任何一台工作站上进行选课,我们在设计与实现网上选课系统时采用了另一种基于Web的网络应用模式B/S(Browser/Server)模式。
1系统设计1.1系统功能设计在设计本系统之前,我校已有一基于C/S模式的选课系统正在使用,原系统包括用户(学生)子系统、管理员(教务处管理人员)子系统。
考虑到管理员的人数有限且一般都使用办公室电脑进行选课管理,所以管理员子系统仍延用原C/S模式的系统。
本文介绍的B/S模式的网上选课系统只用来实现原用户子系统的功能。
系统的功能模块设计如图1所示。
1.2系统体系结构设计B/S模式是一种以Web技术为基础的新型的系计算机与现代化2004年第8期JISUANJIYUXIANDAIHUA总第108期1994-2010ChinaAcademicJournalElectronicPublishingHouse.Allrightsreserved.http:
/统平台模式,它把传统C/S模式中的服务器部分分解为一个数据库服务器和一个应用服务器(Web服务器),从而构成了B/W/D三层体系结构的系统,如图2所示。
第一层:
前端客户机浏览器,可以是任意一台校园网上的个人微机,学生可使用Windows操作系统自带的IE浏览器进行系统提供的有关操作。
Web浏览器以HTTP协议向Web服务器提出服务请求,Web服务器对用户身份进行验证后又以HTTP格式将处理结果返回客户机浏览器。
第二层:
中间件Web服务器,由Apache+Tomcat服务器组成。
ApacheWebServer是由Apache组织负责的一个Freeware,它具有强大、稳定、公开的特点,是市场占有率最高的Web服务器。
Tomcat是由Sun公司和Apache开发小组共同提出的合作项目ApacheJakartaProject下的产品,是为了使JSP/Servlet能够与ApacheServer一起运行而开发的JSP容器。
Tomcat虽然包括了Web服务器,但是它所包含的Web服务器无论从功能还是稳定性上都远远不如Apache,因此让Tomcat作为Apache服务器的一个JSP容器与Apache服务器一起运行,可以充分发挥两者各自的长处,如果是Sevlet/JSP就由Apache交给Tomcat处理,如果是其他类型的文件那就由Apache处理。
第三层:
后台数据库服务器,我们选用了功能强大的Ora2cle数据库服务器。
Oracle是一个庞大的分布式数据库管理系统,具有强大的信息管理功能,包括数据管理、基于Web的数据库访问以及数据仓库处理等。
该网上选课系统是本校教务管理系统的一个子系统,和教务管理系统共用一个数据库。
本校现有在校生25000余人,教务管理系统的数据量非常庞大,因此我们选用了大型关系数据库管理系统OracleRDBMS作为后台数据库服务器。
2系统实现2.1技术准备2.1.1通过JSP技术实现动态网上选课JSP(JavaServerPages)是由Sun公司于1999年4月开发完成的动态网站开发技术。
它利用JavaBeans和Java标记对静态HTML代码和动态数据进行了区分,静态HTML代码由HTML程序员完成,而动态数据和JavaBeans由Java程序员完成。
这样的分工原则,可以使不同的程序员专心致志于各自的领域。
JSP继承和扩展了Servlet的功能,JSPContainer(容器)本身就是用Servlet编写的,而JSP网页程序就是先经过JSP容器转换成Servlet的Java代码,然后再编译成可执行的Java类文件。
这个类文件经过服务器端的JSP容器加载至服务器以后,即可服务于所有来自客户端的请求,并动态返回执行结果。
JSP是用Java语言的语法写成的,Java语言本身具有跨平台的特性,所以JSP最适合于编写服务器执行的程序。
加上JSP可以结合静态的HTML语法,使得JSP的设计方式简洁而直观。
JSP的一个关键技术是JavaBeans组件技术。
Jav2aBeans是一个可重复使用的、跨平台的软件组件(SoftwareComponent)。
在JSP文档中使用的JavaBeans一般用来处理一些事务,例如,数据运算、数据库连接和数据处理等。
事实上,JavaBeans就是Java类,而这种类的设计需要遵循Sun公司制定的JavaBeans规范文档中描述的一些或全部约定,它的方法和属性对于其他的Java代码也是可用的。
一个标准的JavaBeans通常具有如下几项特性:
(1)是一个公共(public)类。
(2)构造函数不传入参数。
(3)有一组getXXX类型的公共方法,可以供外部对象得到内部的属性(property)值。
(4)可以通过一组setXXX类型的公共方法,来改变内部的属性值。
对于JSP文档而言,JavaBeans不仅封装了大量有用的信息,而且还将一些数据处理的程序隐藏在Jav2aBeans的内部,从而大大降低了JSP文档的复杂度。
在JSP文档中可以使用、及三种操作指令实现对JavaBeans的调用。
2.1.2通过JDBC连接Oracle数据库JDBC(JavaDatabaseConnectivity)是用于将Java程序和关系数据库连接起来的程序接口,是执行SQL语句的JavaAPI。
它由一些Java语言编写的类和接口组成。
JDBC为数据库开发人员、数据库前台工具开发人员提供了一种标准的应用程序接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。
JDBC提供的主要接口如下:
(1)java.sql.Drivermanag2er,用来装载驱动程序并为创建新的数据库连接提供支持。
(2)java.sql.Connection,完成对某一指定数据库的连接功能。
(3)java.sql.Statement,在一个给定的连接中作为SQL执行声明的容器。
(4)java.sql.Re2sultSet,用来控制对一个特定语句行数据的存取。
Java程序是通过JDBC驱动程序与数据库进行连接的,用户只要在Java程序中指定某个数据库的驱动程序,就可以连接存取指定的数据库。
就常用的JDBC驱动程序而言,可以分为两种类型:
JDBC2ODBC桥驱动程序(类型1)和专利协议纯Java驱动程序(类型2)。
JDBC2ODBC(OpenDatabaseConnectivity)桥驱动3212004年第8期彭巧珍等:
基于JSP技术的网上选课系统的设计与实现1994-2010ChinaAcademicJournalElectronicPublishingHouse.Allrightsreserved.http:
/程序是由Sun与Merant公司联合开发的。
它的主要功能是把对JDBCAPI的调用转换为对ODBCAPI的调用,即利用JDBC2ODBC桥通过ODBC来存取数据源。
类型2驱动程序使用厂商专用的网络协议,把JDBCAPI调用转换成直接网络调用,它们之间通过套接字直接与数据库建立连接。
类型2驱动程序提供的性能要优于类型1驱动程序,也是在实际应用中最简单的驱动程序,因为不需要安装其它的中间件。
主要的数据库厂商都为它们的数据库提供了类型2的JDBC驱动程序。
本系统的开发就采用了类型2驱动程序JDBCforOracle。
2.2系统功能实现对应系统的功能设计,图3给出了系统的功能实现。
图中列出了系统中主要的静、动态页面和Jav2aBeans。
从图3中可以看出,通过Bean的使用,该系统实现了对数据库操作的封装,一方面,大大降低了JSP文档的复杂程度;
另一方面,有效地避免了重复代码的编写,提高了系统的可维护性。
系统中最核心也是最底层的Bean是ConDBBean,该Bean封装了对数据库的连结、查询和更新操作。
ConDBBean的代码如下:
packageConDBBean;
importjava.sql.3;
importjava.lang.3;
publicclassConDBBeanStringdriver=oracle.jdbc.driver.OracleDriver;
Stringurl=jdbc:
oracle:
thin:
localhost:
1521:
jwglxt;
Stringuser=system;
Stringpassword=manager;
Connectioncon=null;
Statementstmt=null;
ResultSetrs=null;
publicConDBBean()/实现对数据库的连接try/异常处理模块Class.forName(driver);
/加载驱动程序c