学生信息管理系统设计文档jspWord文件下载.docx
《学生信息管理系统设计文档jspWord文件下载.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统设计文档jspWord文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
3.2.3学生角色模块9
3.3数据库设计9
3.3.1数据库应用分析9
3.3.2系统连接数据库的实现9
第4章系统详细设计12
4.1系统公共模块的设计与实现12
4.1.1系统首页12
4.1.2系统欢迎页面15
4.1.3系统应用页面18
4.1.4系统留言板页面18
第5章结束语21
致谢
参考文献
第1章引言
系统开发背景
随着科学的发展,教育的重视程度不断提高,学生人数逐年上升,传统的学生信息管理己暴露出很多效率和经济上的弊端。
学生信息管理已在学校经济和人力支出中占了很大比例,严重影响了学校教学质量的提高与教学进度的发展,改善学校学生信息管理的方法己成为当务之急。
学生信息管理系统和其他信息管理系统一样是当今管理信息不可缺少系统,它对学校的决策者和管理者以及学校的学生来说都有着重要的作用和价值。
正因如此学生信息管理系统应该为用户提供充足的信息资源和快捷的查询手段。
无论是对学生还是学生管理者来说都是一种体力劳动的减负。
为老师和管理者留出更多的时间,让他们把心思都花在怎样教学和自己的学习上。
同时也可以为学校节约经费。
学生信息管理系统具有手工管理所无法比拟的优点。
如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生信息管理的效率。
因此,开发这样一个低成本高效率的管理系统是十分必要的。
系统简介
系统的名称为学生信息管理系统,简称SIMS(StudentInformationManagementSystem)。
本系统能够实现学生信息的管理。
“学生信息的管理”可以实现对学生信息的录入、查询、修改和删除等功能。
学生信息包括学生基本信息和学生入学信息,学生基本信息涵盖该学生的身份信息、家庭信息和基本情况记录等,学生入学信息包含该学生的入学时间、学历层次、院部、专业和学号等信息。
通过学生信息的录入可以把学生的相关信息添加到系统中,通过学生信息的查询可以查看学生的基本信息和入学信息,通过学生信息的修改和删除可以对该学生的信息进行修改和删除操作。
系统使用范围
本系统的设计考虑了系统的通用性,可以应用于教育系统的各种类型院校。
系统开发技术
1.1.1JSP动态网站开发技术
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,能够在多种操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
1.1.2HTML超文本标记语言
HTML(HyperTextMarkupLanguage)即超文本标记语言,用于建立web页面和其他超级文本语言,是WWW的描述语言。
HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。
HTML的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。
1.1.3SQLServer数据库技术
SQLServer是一个关系数据库管理系统,采用SQL(StructuredQueryLanguage,结构化查询语言)语言标准。
SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统,该版本继承了SQLServer7.0版本的优点,同时又比它增加了许多更先进的功能。
具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。
1.1.4Java面向对象程序设计语言
Java是由SunMicrosystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。
用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:
跨平台、动态的Web、Internet计算。
Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。
Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。
1.1.5JavaScript网页特效技术
Javascript是由Netscape公司开发的一种脚本语言(scriptinglanguage),或者称为描述语言。
在HTML基础上,使用Javascript可以开发交互式Web网页。
JavaScript使网页增加互动性。
JavaScript使有规律地重复的HTML文段简化,减少下载时间。
JavaScript能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由CGI验证。
1.1.6CSS层叠样式表单技术
CSS是CascadingStyleSheets(层叠样式表)的缩写。
是用于(增强)控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。
加在head部分的<
styletype="
text/css"
>
和<
/style>
分别被浏览器识别为CSS的开始和结束。
CSS的作用是定义网页的外观(例如字体,颜色等等),它也可以和javascript等浏览器端脚本语言合作做出许多动态的效果。
系统开发工具
1.1.7Tomcat应用服务器
Tomcat服务器是一个免费的开放源代码的Web应用服务器,是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
Tomcat运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能。
Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
1.1.8Dreamweaver网页制作工具
Dreamweaver是美国Macromedia公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。
使用网站地图可以快速制作网站雏形、设计、更新和重组网页。
改变网页位置或档案名称,Dreamweaver会自动更新所有连结。
使用支援文字、HTML码、HTML属性标签和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简单。
1.1.9Photoshop平面设计工具
Photoshop是Adobe公司旗下最为出名的图像处理软件之一。
使用Photoshop可以进行图像编辑、图像合成、校色调色及特效制作等工作,是网页制作和系统开发的美工伴侣。
第2章系统需求分析
2.1系统开发的实现方式
本系统采用B/S(Browser/Server,浏览器/服务器模式)结构,前台部署使用Tomcat应用服务器,后台数据库使用SQLServer数据库。
应用的开发工具为Dreamweaver网页制作工具、Photoshop平面设计工具、UltraEdit开发环境和Visio流程图、表制作工具。
2.2系统开发的技术支持
本系统在开发中应用到了JSP动态网站开发技术、Java面向对象程序设计语言和SQL结构化查询语言,在系统页面的展现上使用了HTML超文本标记语言、JavaScript网页特效技术和CSS层叠样式表单技术。
2.3系统功能分析
本“学生信息管理系统”分为三个模块:
教务部门、教师、学生三大模块。
教务部门:
拥有对所有表的查询更新与删除权利(分类信息属于查询结果除外);
教师:
可对教师、专业以及院系信息,分类信息,学生情况进行查询,对成绩单进行查询、更新以及删除等所有操作;
学生:
只可对所有模块信息进行查询,同时可对自己的部分学生情况进行一定的修改与更新。
2.4系统数据流图
数据流图:
简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据流程图中有以下几种主要元素,如图2-1所示:
图2-1数据流图的元素
本学生信息管理系统的数据流图如图2-2所示。
图2-2学生信息管理系统数据流图
第3章系统概要设计
3.1数据库设计
学生基本信息表
系部类别信息表
留言信息表
管理员信息表
1.数据库连接
应用程序访问数据库首先要进行的是连接数据库,数据库的连接应用于密码验证、信息显示、信息录入及信息更改等应用中,本系统的应用程序采用JDBC(JavaDataBaseConnectivity)技术来实现数据库的连接访问,JDBC的驱动程序可以从网上下载,本系统采用驱动程序“MicrosoftSQLserver2000FORJDBC”。
2.系统帮助
系统帮助页面通过应用页面上的“使用帮助”菜单连接而展现出来的,在帮助页面的左侧有树形菜单,点击其中的一个节点便会在页面的右侧展现该节点对应的内容。
31.211.1管理员角色模块
管理员角色是本系统中权限最高的用户,可以对系统中的用户及信息等进行查询、打印、增加、修改和删除等,其中教师和学生所拥有的权限管理员都具备。
管理员角色的功能图示如图3-1。
图3-1管理员角色功能图示
31.211.2教师角色模块
图3-2系部角色E-R图
31.211.3学生角色模块
学生角色在本系统中的权限时最低的,只能对成绩进行查询
学学生角色的E-R图如图3-3。
图3-3学生角色E-R图
3.3数据库设计
31.312.1数据库应用分析
本系统的数据库应用采用MicrosoftSQLServer2005创建student数据库,需要的数据表有四个,liuyan表、stuinfo表、userinfo表、xibuinfo表。
31.312.2系统连接数据库的实现
本系统连接数据库采用JDBC-ODBCBridre技术,创建完ODBC数据源后,在系统的程序页面中应用如下代码便可以与数据库进行连接,进而实现对数据的查询、修改、插入和删除的操作。
packagedao;
importjava.sql.*;
importjavax.naming.InitialContext;
importjavax.sql.DataSource;
publicclassConnecter{//staticStringdriverName="
com.mysql.jdbc.Driver"
;
//MySql数据库用这个
//staticStringconnectionString="
jdbc:
mysql:
//117.79.94.209:
3306/student"
staticStringdriverName="
com.microsoft.sqlserver.jdbc.SQLServerDriver"
staticStringconnectionString="
sqlserver:
//localhost:
1433;
DatabaseName=student"
DataSourceds=null;
privateConnectionconnection=null;
ResultSetrs;
static
{
try{
Class.forName(driverName).newInstance();
}
catch(Exceptione)
{
e.printStackTrace();
}
publicConnectiongetConnenction()
try
{/*InitialContextctx=newInitialContext();
ds=(DataSource)ctx.lookup("
java:
comp/env/jdbc/NorthWind"
);
*/
connection=DriverManager.getConnection(connectionString,"
sa"
"
123456"
returnconnection;
}
publicResultSetexecuteQuery(Stringsql)throwsException
{
try
sql=newString(sql.getBytes("
GBK"
),"
ISO8859_1"
Connectioncon=getConnenction();
Statementstmt=con.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(sql);
catch(SQLExceptionex)
System.out.println("
sql.executeQuery:
"
+ex.getMessage());
returnrs;
}
第4章系统详细设计
4.1系统公共模块的设计与实现
41.1.1系统首页
packagestuservlet;
importjava.io.IOException;
importjava.io.PrintWriter;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importdll.StuDll;
importdll.UserInfoDll;
publicclassLoginextendsHttpServlet{
publicLogin(){
super();
publicvoiddestroy(){
super.destroy();
//Justputs"
destroy"
stringinlog
//Putyourcodehere
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
doPost(request,response);
publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
response.setContentType("
text/html;
charset=GB2312"
//设置响应的MIME类型
PrintWriterout=response.getWriter();
request.setCharacterEncoding("
gb2312"
Stringrole=request.getParameter("
role"
Stringsno=request.getParameter("
username"
Stringpwd=newString(request.getParameter("
password"
));
if(role.equals("
0"
)){//管理员登陆
inti=newUserInfoDll().getUser(sno,pwd);
if(i==0){
//登陆成功
request.getSession().setAttribute("
customerId"
sno);
response.sendRedirect("
/StudentManage/index.jsp"
return;
}elseif(i==-1){
//用户不存在
request.setCharacterEncoding("
out.print("
<
scriptlanguage='
javascript'
alert('
!
用户不存在'
window.location.href='
/StudentManage/login.jsp'
/script>
return;
elseif(i==1){
//密码错误
out.print("
密码错误'
return;
else{//学生登陆
System.out.println(sno+"
sss"
inti=newStuDll().getStu(sno,pwd);
if(i==0){
//登陆成功
response.sendRedirect("
/StudentManage/stuinfo.jsp?
sno="
+sno+"
return;
}elseif(i==-1){
//用户不存在
out.print("
return;
elseif(i==1){
//密码错误
/**
*Initializationoftheservlet.<
br>
*
*@throwsServletExceptionifanerroroccurs
*/
publicvoidinit()throwsServletException{
publicvoidservice(HttpServletRequestrequest,HttpServletResponseresponse)throwsjavax.servlet.ServletException,java.io.IOException{
doGet(request,response);
41.1.2系统欢迎页面
response.setContentType("
PrintWriterout=