基于JSP实现的学生档案管理系统.docx
- 文档编号:5009545
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:20
- 大小:430.92KB
基于JSP实现的学生档案管理系统.docx
《基于JSP实现的学生档案管理系统.docx》由会员分享,可在线阅读,更多相关《基于JSP实现的学生档案管理系统.docx(20页珍藏版)》请在冰豆网上搜索。
基于JSP实现的学生档案管理系统
学生档案管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
经过分析,我们使用MICROSOFT公司的JSP开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。
关键词:
ActiveX插件,类型,字段。
ABSTRACT
Thesystemofmanagingstudentfileisatypicalapplicationofmanaginginformationsystem(knowasMIS),whichmainlyincludesbuildingupdata-baseofback-endanddevelopingtheapplicationinterfaceoffront-end.Theformerrequiredconsistencyandintegralityandsecurityofdata.Thelatershouldmakethe
applicationpowerfulandeasilyused.
Bylookinguplotsofdatum,weselectedJSPpresentedbyMicrosoftbecauseofitsobjectivetoolsinWin32.JSPofferedaseriesofActiveXoperatingadata-base.Itcangiveyouashort-cuttobuildupaprototypeofsystemapplication.Theprototypecouldbemodifiedanddevelopedtillusersaresatisfiedwithit.
Keywords:
ActiveX,Form,Field.
前言
学生档案管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生档案管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:
效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对学生档案信息进行管理,具有着手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
因此,JSP开发这样一套管理软件成为很有必要的事情,在下面的各章中我们将以开发一套学生档案管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。
第一章为什么要开发一个学生档案管理系统
1.计算机已经成为我们学习和工作的得力助手:
今天,计算机的价格已经十分低廉,性能却有了长足的进步。
它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:
首先,计算机可以代替人工进行许多繁杂的劳动;
其次,计算机可以节省许多资源;
第三,计算机可以大大的提高人们的工作效率;
第四,计算机可以使敏感文档更加安全,等等。
2.在大学中用计算机管理学生档案的意义
现在我国的大学校中档案的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。
我作为一个计算机应用的大学生,希望可以在这方面有所贡献。
改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我四年的所学编制出一个实用的程序来帮助中小学进行更有效的学籍管理。
归纳起来,好处大约有以下几点:
1.可以存储历届的学生档案,安全、高效;
2.只需一到二名档案录入员即可操作系统,节省大量人力;
3.可以迅速查到所需信息。
3.为将来上网
为将来学校上网做好准备跟据1999年中国电信的调查报告显示我国的上网人数已达到890万,互联网已经十分普及,学校往界的毕业生希望能在世界的任何一个角落查到自己校友的信息,本系统为学校将来的上网作了先期工作,比如数据库的建立。
4.档案设计分析
学生档案的设计分析根据实际情况,我们使用原型法(RapidPrototyping)即以少量代价快速地构造一个可执行的软件系统模型。
使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。
此时模块也发展成为最终产品了。
第二章怎样开发一个学生档案管理系统
2.1编程环境的选择
微软公司的SQL是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。
SQL提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。
故而,实现本系统SQL是一个相对较好的选择。
2.2关系型数据库的实现
SQL2000就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。
SQL的优点在于它能使用数据表示图或自定义窗体收集信息。
数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。
另外,SQL允许创建自定义报表用于打印或输出数据库中的信息。
SQL也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。
SQL是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。
如上所述,SQL作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
2.3JSP连接SQLServer2000数据库
微软的SQL数据库引擎提供了与数据库打交道的途径,我们是通过它以及SQL来访问数据库并对其进行各种操作。
SQL、SQL以及其他微软的软件产品都是通过共用JET数据库引擎,从而给用户提供了丰富的数据类型。
DATA控件在数据库中的信息与将信息显示给用户看的VisualBasic程序之间架起了一座桥梁。
我们可以设置DATA控件的各个属性,告诉它要调用那个数据库的哪个部分。
缺省情况下,DATA控件根据数据库中的一个或多个数据表建立一个dynaset-type(动态集合)类型的记录集合。
一个记录集合是动态的也就意味着,当原来的数据表中的容改变了以后,该记录集合中的记录也会随之改变。
DATA控件还提供了用来浏览不同记录的各种跳转按钮。
将DATA控件放置在窗体中之后,我们还必须在该控件与要处理的数据库之间建立联系。
testsqlserver.jsp如下:
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.sql.*"%>
<%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
Stringurl="jdbc:
microsoft:
sqlserver:
//localhost:
1433;DatabaseName=pubs";
//pubs为你的数据库的
Stringuser="sa";
Stringpassword="";
Connectionconn=DriverManager.getConnection(url,user,password);
Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
Stringsql="select*fromtest";
ResultSetrs=stmt.executeQuery(sql);
while(rs.next()){%>
您的第一个字段内容为:
<%=rs.getString
(1)%>
您的第二个字段内容为:
<%=rs.getString
(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
第三章SQL应用程序基本
Windows下的SQL应用程序基本的构建块是用户所创建的对象,每一个对象都具有一些特性和行为(属性、事件和方法)。
开发人员可以最有效利用所创建的每一个对象。
使用应用程序具有可通用性可说扩展性和强有力的功能。
SQL应用由一系列对象组成,包括有函数、菜单、函数、结构和数据窗口、用户对象、用户事件等等,对象中又包含若干控件如命令按钮、单行编辑器
等这些对象和控件都可在许多应用中重复使用。
3.1实现菜单选项菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,SQL也提供了强大的创建菜单功能是程序更加标准。
您可以使用SQL的ApplicationWizard也可以使用SQL的菜单编辑器建立菜单或者修改已经存在的菜单。
3.2实现工具栏表Papers控件与Office97种看到的表Papers是类似的。
Papers就是一个可以在窗体上浮动的工具,同时也是其他ActiveX的容器。
通过Papers中迁入其他空间你局可以向用户提供更好的灵活性和义用性。
Toolbar是工具条控件,是实现工具条的主体。
其中的按钮可以显示图像和标题,并按功能分组或加入分隔符,还可以围棋设置鼠标停留在其上显示的提示字符。
Toolbar也是一个控件容器且具有Style属性,并可以为其增加下拉按钮和平滑按钮等。
选择“工程”下拉菜单中的“部件”选项,显示“部件”对话框。
在“控件”选项卡列表中选择“MicrosoftWindowsCommonControls6.0”后工具相中增加
改控件。
其属性及对象如下:
1.Align属性定义工具条在窗体中的位置
2.ToolTipText属性是字符串类型,定义控件的提示字符
3.Style属性定义按钮外观。
4.ImageList属性定义与数据条对应的ImageList控件名,该控件定义工具条按钮显示的图像。
5.HotImangeList属性设置一个ImageList控件名,该控件定义按钮获得热点时显示的图像。
6.DisabledImageList属性定义工具条按钮无效时显示的图像。
创建工具条包括ImageList和Toolbar控件ImageList用于为其他控件提供图像库,将ImageList控件加入到工具箱的操作于前述Toolbar控件相同。
3.3关于版本为了是程序显得更具有专业风格,首先可以在其中加入通常的应用程序信息。
这些信息包括公司名称、版本号、修订号以及其他类似信息。
SQL允许你使用APP对象来保存这些信息,APP对象是一个预定义对象,不需要在程序中创建它。
APP对象的大多数属性被应用程序用来提供常规的信息,通过使用这些APP提供的属性,可以在应用程序和用户之间交流重要信息,在项目属性框中以设置它的属性.
第四章SUN下的JSP编程环境简介
4.1JSP的执行过程
请求JSP页面——>JSPParser解析*.jsp编译为*.java——>javac命令编译成*.class——>执行class文件——>响应返回结果给客户端
JSP代码中包含JSP元素和Templatedata两类。
Templatedata指的是JSP引擎不处理的部分,就是JSP引擎会把除在标记<%...%>以外的部分直接传递出去而不进行任何处理。
JSP在第一次或修改JSP文件后执行都会调用JSPParser将*.jsp文件编译成servlet程序,所以会比较慢。
4.2JSP基本语法
(1)HTML注释
可以在JSP代码中添加一段HTML格式的注释,此注释发生到客户端,但不在页面上显示,语法如下:
--HTML格式的注释,在客户端查看源代码时可见-->
--此注释由<%=programmer%>添加-->
如果programmer为hackiller,则在客户端返回的注释是
--此注释由hackiller添加-->
(2)JSP注释
写在JSP代码中,但不发送到客户端。
<%--JSP注释,该注释会在JSP编译时被忽略掉--%>
<%--/*Scriptlet中的多行注释*/--%>
<%--/**Scriptlet中的多行注释,可以用javadoc从java文件中提取出来*/--%>
<%--JSP的单行注释--%>
(3)个脚本元素
1.声明(Declaration)全局变量
<%!
inti=0;Stringstr="HelloWorld!
";%>
2.表达式(Expression)
在JSP代码中,经常使用表达式来输出变量的值,可以在任何地方
<%!
inta=1;intb=2;Stringstr="HelloWorld!
";%>
<%=a+b%><%=str>
PS:
不能用“;”号来作为表达式的结束符。
但同样的表达式在Scriptlet中必须以分号来结尾。
3.脚本段(Scriptlet)
脚本段用来包含一个有效地Java程序段
<%intb=3;%>局部变量
4.3JSP内置对象
1.Request:
请求对象
该对象封装了用户提交的信息,通过调用该对象相应方法可以获取封装的信息。
当request对象获取客户提交的汉字字符是,会出现乱码,必须进行特殊处理。
常用方法:
getParameter(StringparameterName):
获取表单提交的信息。
getProtocol():
获取客户使用的协议。
getServletPath():
获取客户提交信息的页面。
getMethod():
获取客户提交信息的方式。
getHeader(Stringstr):
获取HTTP头文件中的accept、accept-encoding和Host的值。
getRermoteHost():
获取客户的IP地址。
getServerName:
获取服务器名称。
getServerPort:
获取服务器的端口号。
getParameterNames():
获取客户段提交的所有参数的名字。
2.Response:
响应对象
对客户的请求做出动态的响应,向客户端发生数据。
(1)动态响应contentType属性
用page指令静态地设置页面的contentType属性,动态设置这个属性时使用response.setContextType("text/html;charset=utf-8");
(2)Response重定向
response.sendRedirect("index.jsp");
3.Session:
会话对象
(1)什么是Session对象?
Session对象在第一个JSP页面被装载时自动创建,完成会话期管理。
从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。
(2)Session对象的ID
当一个客户首次访问服务器上的一个JSP页面时,JSP引擎产生一个Session对象,同时分配一个String类型的ID号,JSP引擎同时将这个ID号发送到客户端,存放在Cookie中,这样Session对象,直到客户关闭浏览器后服务器端改该客户的Session对象才取消,并且和客户的会话对应关系消失。
(3)常用方法
publicStringgetId():
获取Session对象的编号。
publicvoidsetAttribute(Stringstr,Objectobj):
将参数对象添加到Session对象中。
publicObjectgetAttribute():
根据属性名获取在Session对象中的属性。
publicbooleanisNew():
判断是否是一个新的客户。
4.Application:
应用程序对象
(1)什么是Application对象?
在服务器启动后就产生了这个Application对象,当客户在所访问的网站的各个页面之间浏览时,这个Appliaction对象都是同一个,所有的客户共享这个内置的Application对象。
(2)常用方法
setAttribute(Stringkey,Objectobj):
将参数对象添加到Application对象中。
getAttibute(Stringkey):
根据属性名获取Application对象中的属性
5.Out:
输出对象
out对象是一个输出流,用来向客户输出数据。
out.print():
输出各种类型数据。
out.newLine():
输出一个换行符。
out.close():
关闭流。
6.Config:
配置对象
一般我们使用Config对象获取一些初始化配置信息,常用的方法有getInitParameter和getInitParameterNames,以获得Servlet初始化时的参数。
7.Page:
页面对象
page对象代表了正在运行的由JSP文件产生的类对象,不建议一般读者使用。
8.PageContext:
页面上下文对象
JSP引入的PageContext的类,通过它可以访问页面的许多属性。
pageContext变量存储与当前页面相关联的PageContext对象的值。
PageContext类拥有getRequest、getResponse、getOut、getSession等方法。
9.Exception:
例外对象
exception对象代表了JSP文件运行时所产生的例外对象,此对象不能在一般的JSP文件中直接使用,而只能在使用了
<%@pageisErrorPage="true"%>的JSP文件中使用。
这是因为JSP文件运行时产生的错误对象被向外抛出,只能被使用了<%@pageisErrorPage="true"%>标记从而具有拦截错误对象功能的JSP所拦截。
最常用的方法就是getMessage,用来获取错误信息。
4.4实例
登陆页面:
index.jsp
Html代码
<%@pagelanguage="java"pageEncoding="UTF-8"contentType="text/html;charset=UTF-8"%>
.btn{
font-family:
"Tahoma","宋体";
font-size:
9pt;
color:
#001E3C;
BORDER-BOTTOM:
#6794BC1pxsolid;
BORDER-LEFT:
#8BB8E01pxsolid;
BORDER-RIGHT:
#6794BC1pxsolid;
BORDER-TOP:
#8BB8E01pxsolid;
background-image:
url(image/buttonbg.gif);
CURSOR:
hand;
font-style:
normal;
padding-left:
3px;
padding-right:
3px;
}
functiondoLogin(){
varvform=document.loginform;
if(!
loginform.username.value){
alert("请输入用户名!
")
return;
}
if(!
loginform.password.value){
alert("请输入密码!
")
return;
}
vform.submit();
}
cellspacing="0"cellpadding="0"border="0"style="width: 500;"> none"> cellpadding="0"border="0"style="table-layout: fixed"> 100%;"> 100%;height: 100%"> cellpadding="4"border="0"style="table-layout: fixed;"> 用户名 < 如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。 copyright@ 2008-2022 冰点文档网站版权所有 经营许可证编号:鄂ICP备2022015515号-1