基于java的学生信息管理系统设计报告

上传人:细水****9 文档编号:62882147 上传时间:2022-03-16 格式:DOC 页数:29 大小:395KB
收藏 版权申诉 举报 下载
基于java的学生信息管理系统设计报告_第1页
第1页 / 共29页
基于java的学生信息管理系统设计报告_第2页
第2页 / 共29页
基于java的学生信息管理系统设计报告_第3页
第3页 / 共29页
资源描述:

《基于java的学生信息管理系统设计报告》由会员分享,可在线阅读,更多相关《基于java的学生信息管理系统设计报告(29页珍藏版)》请在装配图网上搜索。

1、南华大学计算机科学与技术学院课程设计报告 ( 2005 2006学年度 第 1 学期 )课程名称:网络编程技术题 目:基于java的学生信息管理系统姓名:刘亮学号:专业:计算机科学与技术班级:03级04班地点:专业实验室教师:谭敏生 前 言随着计算机科学的发展,数据库技术在Internet中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。个性化已逐渐成为当今Web应用的潮流。本课程设计研究了一种基于数据关联规则的网络学生信息管理系统,此方案与现今网上已采用的一些方案相比,具有用户使用更简单、界面更直观等优点。在设计中我们发现这样一个事实,一个用户或管理员在登陆这个网站时一般来讲只

2、对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。这点启发了我们,如果能根据用户活管理员的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。一些站点已经在这方面作出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站点进行一些自主的设置。这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户了解一个站点前让其对站点进行设置,其结果未免有些粗糙。于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用

3、户点击一个主题(链接)之后,系统能够自动生成一页面,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户作出任何额外工作的情况下实现了为用户量身订做的个性化页面。要实现这样的功能,离不开后台数据库的支持。管理员验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了SQL Server 2000数据库作为ODBC(Open DataBase Connectivity )数据源,并以先进的JDBC-ODBC桥接技术进行数据库存取等操作,使Web与数据库紧密联系起来。整个个性化页面生成系统主要由使用Dreamwe

4、aver_MX开发的关联规则采掘系统和利用JSP技术实现的个性化Web页面生成器两部分组成。关联规则采掘系统对数据库中的历史记录进行分析,产生用户关联规则表;页面生成器则负责记录管理员的行为动态生成管理员个性化Web页面。二者通过数据库服务器和Web服务器连接。SQL Server 2000前端浏览器JDK+TOMCATJDBC-ODBC桥接后端数据库数据库服务器JSP浏览器 为能更好的设计系统,我们在设计时将组内成员主要分成了两组:一组主要负责后台数据库的设计;一组主要负责前台浏览器的设计。 基于Java的学生信息管理系统 -后台数据库设计报告1.课程设计目的及要求设计目的:使用JDBC-O

5、DBC桥接驱动程序将前台浏览器与后台数据库(本系统用的是SQL Server)结合位为一体。利用SQL语句接口来调用数据库,以存取或更新数据库中的数据,特别是实现对数据库中学生照片的存取,这是我们后台数据可设计的重点。在文档中就新增、删除、修改与查询等几个基本的数据库操作,外加这些操作相关的一些项目作了简单的陈述。设计要求:1.要求在前台主界面上显示数据库中存放的学生的基本信息,一般的普通用户可以在系统中查看所有学生的信息;而由特定权限的管理员可以通过按钮或菜单对学生的信息进行录入、修改、查询、删除等功能。 2.利用JDBC驱动程序连接数据库,修改、存储学生的基本信息。2. 课程设计软硬件环境

6、 2.1系统开发工具的选择后台数据库:本系统后台数据库选择SQL Server 2000。2.2性能需求 2.2.1硬件环境 处理器:InterCR300或更高。 内存:128MB(建议256MB)。 硬盘空间:30MB。 2.2.2软件环境 操作系统:Windows98 或Windows2000 / Windows NT Server 4.0/window XP。 数据库:SQL Server 2000。3. 课程设计内容3.1 熟悉java 与数据库系统 3.1.1 数据库系统简介数据库系统是一个信息核心,也是任何企业单位非常重视的运营主体。但随着科技的进步,多元化的需求,促使数据库扮演的

7、角色愈来愈复杂,也愈来愈重视数据库系统相关程序开发工具的简便及性能。由于java的特性,对这方面需求能够发挥相当多的优势,因而java系统的应用越来越多。JDBC是java与数据库连接的一项规范,用于提供统一的SQL语言的关系数据库系统访问接口,与Java应用的相关程序取得数据库连接之后,便可依照SQL语言去执行各项语句命令的运行。 3.1.2 JDBC数据库连接Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实

8、现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。目前比较常见的JDBC驱动程序可分为以下四个种类:(1)JDBC-ODBC桥接ODBC驱动程序利用ODBC驱动程序提供JDBC访问。注意,必须将ODBC二进制代码(许多情况下还包括数据库客户机代码)加载到使用该驱动程序的每个客户机上。因此,这种类型的驱动程序最适合于企业网(这种网络上客户机的安装不是主要问题),或者是用Java编写的三层结构的应用程序服务器代码。(2)本地API半Java驱动程序这种类型的

9、驱动程序把客户机API上的JDBC调用转换为Oracle、Sybase、Informix、DB2或其它DBMS的调用。注意,象桥驱动程序一样,这种类型的驱动程序要求将某些二进制代码加载到每台客户机上。(3)JDBC-NET纯Java驱动程序这种驱动程序将JDBC转换为与DBMS无关的网络协议,之后这种协议又被某个服务器转换为一种DBMS协议。这种网络服务器中间件能够将它的纯Java客户机连接到多种不同的数据库上。所用的具体协议取决于提供者。通常,这是最为灵活的JDBC驱动程序。有可能所有这种解决方案的提供者都提供适合于Intranet用的产品。为了使这些产品也支持Internet访问,它们必须

10、处理Web所提出的安全性、通过防火墙的访问等方面的额外要求。几家提供者正将JDBC驱动程序加到他们现有的数据库中间件产品中。(4)本地协议纯Java驱动程序这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。这将允许从客户机机器上直接调用DBMS服务器,是Intranet访问的一个很实用的解决方法。由于许多这样的协议都是专用的,因此数据库提供者自己将是主要来源,有几家提供者已在着手做这件事了。据专家预计第(3)、(4)类驱动程序将成为从JDBC访问数据库的首方法。第(1)、(2)类驱动程序在直接的纯Java驱动程序还没有上市前会作为过渡方案来使用。对第(1)、(2)类驱动程序可

11、能会有一些变种,这些变种要求有连接器,但通常这些是更加不可取的解决方案。第(3)、(4)类驱动程序提供了Java的所有优点,包括自动安装(例如,通过使用JDBC驱动程序的appletapplet来下载该驱动程序)。3.1.3 建立JDBC连接步骤数据库连接对动态网站来说是最为重要的部分。很多数据库系统都带有JDBC驱动程序,Java程序就通过JDBC驱动程序与数据库相连,执行查询和提取数据等。Sun公司还开发了JDBC-ODBC bridge,用此技术,Java程序就可以访问带有ODBC驱动程序的数据库,目前大多数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如Oracle、Syba

12、se、MS SQL Server和MS Access等。在本系统中采用的是SQL Server 2000,利用JDBC-ODBC桥接将jsp与数据库连接,主要的数据库连接步骤如下:首先,建立一个SQL Server数据库,其中设计了两个表:学生信息表aa,用户表b,在学生信息表中保存有学生的姓名、学号(设为主键)、性别和照片(因为我们在设计系统时,主要考虑实现通过前台浏览器对数据库中学生的基本信息进行管理,所以我们在数据库中只保存了学生的一般信息,没有对学生资料更好的进行归类,但是主要的编程思想都是一样的),用户管理表中保存有管理员的用户名和密码,管理员需要通过密码验证才能进入管理员主界面。然

13、后,在Control Panel(控制面板)的ODBC Datasource 模块中,加入System DSN, 取名为xf,并指向test.mdb。最后,创建JSP程序访问数据库。在Java中,关键的java.sql、javax.sql等类库,提供了JDBC相关及接口程序,因为JDBC是执行SQL的标准应用程序接口规范,所以如何建立一个使用JDBC的应用程序,除应了解前述概念外,还有几个简单而重要的步骤需要掌握。下示为一个JDBC程序,关键部分对应的步骤说明与语句范例。 步骤说明 语句范例 引进所要的JDBC package import java.sql.*;新建适用的JDBC驱动类程序C

14、lass.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);通过JDBC URL取得数据连接Connection conn=DriverManager.getConnection(jdbc:odbc:xf)建立SQL语句对象Statement stmt=conn.createStatement();执行SQL语句及接收返回结果resultSet rs=stmt.executeQuery(“SELECT * FROM ”); 至此可利用返回结果进行相关程序设计 关闭查询结果集ResultSetrs.close();关闭SQL语句连接Stmt.close();关闭数据

15、库连接Conn.close();3.2 SQL Server 2000和与系统相关的SQL 语言介绍 3.2.1 数据定义 DDL(data definition language) 数据定义语言是指对数据的格式和形态下定义的语言,他是每个数据库要建立时候时首先要面对的,举凡数据分哪些表格关系、表格内的有什么栏位主键、表格和表格之间互相参考的关系等等,都是在开始的时候所必须规划好的。 、建表格: create table table_name( column1 datatype not null not null primary key, column2 datatype not null,

16、.)说明: datatype -是资料的格式。 nut null -可不可以允许资料有空的(尚未有资料填入)。 primary key -是本表的主键。 、更改表格 alter table table_name add column column_name datatype 说明:增加一个栏位(没有删除某个栏位的语法。 alter table table_name add primary key (column_name) 说明:更改表得的定义把某个栏位设为主键。 alter table table_name drop primary key (column_name) 说明:把主键的定义删除

17、。 、建立索引 create index index_name on table_name (column_name) 说明:对某个表格的栏位建立索引以增加查询时的速度。 、删除 drop table_name drop index_name 3.2.2 数据形态datatypessmallint 16 位元的整数; interger 32 位元的整数;decimal(p,s) p 精确值和 s 大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点后有几位数,如果没有特别指定,则系统会设为 p=5; s=0 ; float 32位元的实数; double 64位元的实

18、数; char(n) n 长度的字串,n不能超过 254; varchar(n) 长度不固定且其最大长度为 n 的字串,n不能超过 4000;graphic(n) 和 char(n) 一样,不过其单位是两个字元 double-bytes, n不能超过127,这个形态是为了支援两个字元长度的字体,例如中文字;vargraphic(n) 可变长度且其最大长度为 n 的双字元字串,n不能超过 2000;date 包含了 年份、月份、日期; time 包含了 小时、分钟、秒;timestamp 包含了 年、月、日、时、分、秒、千分之一秒。3.2.3 SOL Server 2000数据库的物理体系数据型

19、(Data):包含有除text、ntext、imange外的所有数据行;索引(Idex):所含内容为索引条目;文本/图像(Text/image):text、ntext、image数据。 3.2.4 数据操作 (data manipulation language) 数据定义好之后接下来的就是数据的操作。数据的操作不外乎增加数据(insert)、查询数据(query)、更改数据(update) 、删除数据(delete)四种模式,以下分别介绍他们的语法: 、增加数据:insert into table_name (column1,column2,.) values ( value1,value2

20、, .) 说明: 1.若没有指定column 系统则会按表格内的栏位顺序填入资料。 2.栏位的资料形态和所填入的资料必须吻合。 3.table_name 也可以是景观 view_name。 、查询数据: select column1,columns2,. from table_name 说明:把table_name 的特定栏位资料全部列出来 select * from table_name where column1 = * and column2 yyy or column3 zzz 说明: 1.´*´表示全部的栏位都列出来。 2.where 之後是接条件式,把符合条

21、件的资料列出来。select column1,column2 from table_name order by column2 desc 说明:order by 是指定以某个栏位做排序,desc是指从大到小排列,若没有指明,则是从小到大排列。 、更改数据: update table_name set column1=´*´ where conditoins 说明: 1.更改某个栏位设定其值为´*´。 2.conditions 是所要符合的条件、若没有 where 则整个 table 的那个栏位都会全部被更改。、删除资料: delete from

22、table_name where conditions 说明:删除符合条件的资料。3.3基于JSP实现图片的数据库存储与显示这一模块是我们对系统设计的重点和难点。数据库应用程序,特别是基于WEB的数据库应用程序,常会涉及到图片信息的存储和显示。在设计过程中,我们考虑过将所要显示的图片存在特定的目录下,在数据库中保存相应的图片的名称,在JSP中建立相应的数据源,利用数据库访问技术处理图片信息。但是,如果我们想动态的显示图片,上述方法就不能满足需要了。我们必须把图片存入数据库,然后通过编程动态地显示我们需要的图片。实际操作中,可以利用JSP的编程模式来实现图片的数据库存储和显示。下面给出了在本系统

23、中调用数据库中学生照片并显示照片的程序以及接收由浏览器发送过来的请求将学生照片存储到数据库中,并附带有程序的分析。 /读取图片源代码try String id=request.getParameter(id); /获得学生的idtryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver); /加载驱动程序catch(ClassNotFoundException e) /捕获异常out.println(not found!); Connection conn=DriverManager.getConnection(jdbc:odbc:xf);/连接数据库State

24、ment stmt=conn.createStatement(); /创建SQL指令对象stmtResultSet result=null; /建立ResultSet(结果集)对象result=stmt.executeQuery(select ima from aa where id=+id+); /执行图片查询语句if(result.next() int len = 10 * 1024 * 1024; /定义字符数组长度OutputStream sout=response.getOutputStream(); /建立输出流InputStream in=result.getBinaryStre

25、am(1);/建立输入流byte b=new bytelen; for(int i=in.read(b);i!=-1;) /对取图片信息 /如果i1表示图片读取成功或不存在sout.write(b); in.read(b); sout.flush(); /强制清出缓冲区sout.close(); /关闭输出流 catch(SQLException e) /抛出异常out.println(e.toString();将上面的代码保存在xianshi.jsp文件中,在学生信息中通过img height=185 src=xianshi.jsp?id= width=141 将通过上面代码取得的图片显示在

26、页面上,其中id信息通过request请求发送给xianshi.jsp中的id属性。/存储图片源代码try tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver);catch(ClassNotFoundException e) out.println(not found!); Connection conn= DriverManager.getConnection(jdbc:odbc:xf);Statement stmt=conn.createStatement();String name=request.getParameter(1); /获得学生姓名

27、name=new String(name.getBytes(8859_1),gb2312);/对获取信息进行中文编码 String id=request.getParameter(2);/id=new String(id.getBytes(8859_1),gb2312);String sex=request.getParameter(3);sex=new String(sex.getBytes(8859_1),gb2312);String image=request.getParameter(4);image=new String(image.getBytes(8859_1),gb2312);

28、FileInputStream str=new FileInputStream(image); /建立输入流String sql=insert aa(name,id,sex,ima) values(?,?,?,?);/定义数据库添加语句PreparedStatement rs=conn.prepareStatement(sql); /建立PreparedStatement对象 rs.setString(1,name); /向表中第1列插入学生姓名 rs.setString(2,id); /输入学生idrs.setString(3,sex); /输入学生性别rs.setBinaryStream(

29、4,str,str.available();/输入照片,str.available()获得图片大小rs.execute(); /执行插入操作catch(SQLException e) /抛出异常out.println(e.toString();4.总结分析至此该系统基于WEB的数据库应用程序已经完成了。由于考虑到我们设计该系统主要是基于Java的学生信息管理系统,按照老师的要求,在浏览器中实现显示学生基本的文字信息和学生的照片功能,所以在数据库中我们只保存了少许几个学生的一些基本信息,如姓名、学号、性别、照片,并没有花费太多的经历将学生的一些详细资料按学院或其他信息建多个学生信息表,这一点我们

30、也感到非常遗憾。学生信息表设计虽然简单,但是我们处理了一个令很多人都感到困惑的难点,在JSP中,利用数据库访问技术处理图片信息,即基于WEB的动态图片显示。基于java的学生信息管理系统 -系统前台Web服务1.课程设计目的及要求设计目的: 在学习了网络编成等课程后,为了更好的理解其有关原理并熟悉网络编成设计过程,进行了此次课程设计。在设计中主要涉及到数据库的设计及操作过程,也为掌握数据库设计的基本方法并进一步应用奠定了基础。前台浏览器设计部分是通过Dreamwaver工具应用jsp编程来实现界面的设计与修改,从而熟悉网络编程的技术。设计要求:设计基于java的学生信息管理系统的前台浏览器服务

31、,包括系统的总界面设计以及系统的功能分析设计,完成系统的整体结构。2.课程设计软硬件环境2.1 前台开发工具本系统是在JSP环境下实现,后台数据库为MS SQL 2000,前台应用JSP技术,JSP全称为JAVA SERVER PAGES,也就是JAVA 服务端网页的意思,JSP是一种集成HTML及JAVA程序于一体的网页技术,让网页设计者能够轻易而有弹性地建立互联网应用程序。JSP称为网页,但它结合JAVA的SERVLET服务端小程序技术,因此称为JSP程序也可以。其中使用到tomcat工具.tomcat可说是一个国际级的JSP服务器,也可以称为JSP容器(CONTAINER)或JSP引擎。

32、tomcat可融入Apache服务器中,而Apache可安装于Unix、Linus、NT、WINDOWS等操作平台,由此可见JSP是跨平台的。JSP技术有以下的优点:1 写一次可到处执行2 组件可重复使用3 可将静态及动态内含隔开4 支持脚本语言及动作5 可通过信息网站存取一层次企业应用程序信息Tomcat需要配置两个配置文件,即server.xml和web.xml。server.xml是tomcat的主配置文件,完成两个目标:提供tomcat组件的初始配置和说明tomcat的结构、含义,使得tomcat通过实例化组件完成启动及构建自身。 2.2开发平台的选择 本系统基于JSP的环境下,所以必

33、须安装支持运行JSP环境运行的环境,首先我们必须安装一个JAVA环境,因为在编译JSP代码时必须有JAVA语言编译器。221首先我们简要介绍一下JAVAJAVA是一种面向对象的程序语言,不仅能够编写小应用程序实现嵌入网页的声音和动画功能,而且还能够应用于独立的大中型应用程序,其强大的网络功能能够把整个Internet作为一个统一的运行平台,极大地拓展了传统单机或Client/Server模式应用程序的外延和内涵。1 数据封装(ENCAPSULATION)将数据分成私用(private)、保护(protected)、公用(public)等,达到数据保密的目的。2 继承(inheritance)有

34、继承的关系后,父类(super class)中的数据(data)或方法(method)其子类(subclass)就有继承使用,子类的子类也可以继承使用,达到数据重复使用(reuse)的目的。3 多态性(polymorphism) JAVA是一种分布式程序语言、JAVA是一种跨平台的程序语言、JAVA是一种网络语言、JAVA是一种WEB的程序语言。222 JAVA语言的安装 JAVA系统一般包含四个部分1. JAVA环境(ENVIRONMENT)、2. JAVA语言(LANGUAGE)、3. JAVA API应用程序接口(APPLICATION PROGRAMMING INTERFACE)、4.

35、 JAVA类库(CLASS LIBRARIES)JDK是Java Develop Kit的简称,意为JAVA的开发工具。JDK有多个版本,可以很方便地从SUN站点( )或其他国内软件站点中获取。我们在设计中下载的是比较新的版本J2SDK1.4.2,详细的安装步骤可以参阅简要说明:1、下载。下载完毕文件名称为:J2SDK_1_4_2_-windows-586.exe。这里代表当前下载的版本号。2、安装。直接运行下载文件,建议安装目录为D盘根目录,安装完毕J2SDK根目录为D:j2sdk1.4.2_05。也可以安装在其它自定义目录下。3、环境变量配置。1)确认登陆Windows帐号为管理员级别帐号

36、2)鼠标右击我的电脑-弹出菜单中选择属性-弹出对话框中选择高级-点击环境变量3)下面操作在系统变量中进行,如果系统变量已存在相同变量名且包含相同变量值,则跳过该步操作;如果系统变量已存在相同变量名但未包含相同变量值,则添加该变量值(用英文“;”隔开);如果系统变量不存在相同变量名,则按如下操作新建变量名并赋变量值。新建变量名:Java_Home 变量值:D:j2sdk1.4.2_05新建变量名:Path 变量值:%Java_Home%bin新建变量名:ClassPath 变量值:.;%Java_Home%libdt.jar;%Java_Home%libtools.jar;%Java_Home%

37、libhtmlconverter.jar(注意:变量值中“.”一定不能缺少)最后重启计算机,完成J2SDK配置。2 . 2 . 3安装TOMCAT我们在开发该系统时用到了Jakarta-Tomcat-5这个版本,下面就以Jakarta-Tomcat-5 为例简单介绍tomcat的安装及配置。、文档及详细安装指南。 简要说明: 1、下载。下载WindowsNT/2K/XP版Tomcat安装版 2、安装。请首先确认,您已安装J2SDK或JDK或JRE,如果没有安装,请先安装。如果已安装并配置完毕,请继续下面步骤: 直接运行下载软件,按提示安装。 注意:在选择组建时,请务必将Service选中。这样

38、将在安装完毕后自动启动Tomcat服务。建议安装在D:Tomcat(这里以D:Tomcat 5.0.28为例)目录下。 3、环境变量配置。1)确认登陆Windows帐号为管理员级别帐号2)鼠标右击我的电脑-弹出菜单中选择属性-弹出对话框中选择高级-点击环境变量3)下面操作在系统变量中进行,如果系统变量已存在相同变量名且包含相同变量值,则跳过该步操作;如果系统变量已存在相同变量名但未包含相同变量值,则添加该变量值(用英文“;”隔开);如果系统变量不存在相同变量名,则按如下操作新建变量名并赋变量值。新建变量名:Tomcat_Home 变量值:D:Tomcat 5.0.28新建变量名:Path 变量

39、值:%Tomcat_Home%bin新建变量名:ClassPath 变量值:%Tomcat_HOME%commonlib最后重启计算机,完成Tomcat配置。补充: 如果计算机仅安装JRE,而未安装JDK,Tomcat仍然能够运行,但是Tomcat将无法编译JSP。这样如果需要编译JSP,就必须将% Java_Home%libtools.jar文件拷贝到%Tomcat_Home%commomlib目录下(建议已安装JDK的用户也补充此操作)。224 测试TOMCAT是否安装成功1、Tomcat运行的端口号默认为8080,可以修改,注意Tomcat自己有一个独立的HTTP服务器,它必须使用一个还

40、未被使用的端口号,用$TOMCAT_PORT标识,修改方法如下: 1)打开$TOMCATconfserver.xml; 2)修改ContextManager:2、双击$TOMCAT目录下的startup.bat来启动Tomcat;3、在浏览器上输入http:/localhost:$TOMCAT_PORT/,能看到Apache Tomcat/5.0.28这一页就表示Tomcat安装成功了;4、点击Servlet Example进入Servlet界面,应该能执行Servlet。5、点击JSP Example进入JSP界面,应该能执行JSP了,若不能,修改$TOMCATconfstart.bat:加

41、上SET JAVA_HOME=D:j2sdk1.4.2_05即可。225 WEB服务配置 在设计系统之前,先配置一个WEB服务器:在TOMCAT目录下的webapps文件夹下创建一个根目录jsp,在该目录下再创建一个WEB-INF子目录,在该目录下配置一个web.xml文件,先配置该文件默认内容如下:将系统所有要用到的程序放在%Tomcat_HOME%webappsjsp目录下,创建好数据库并配置好数据源后,打开浏览器,在地址栏中输入http:/localhost:$TOMCAT_PORT/jsp/index.jsp 就可以登录到该系统的首页了。2.3 前台开发语言JSP简介一)、JSP的优点

42、1、将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包

43、含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。 2、生成可重用的组件 绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。 3、采用标识简化页面开发 Web页面开发人员不会都是熟悉脚本语言的编程人员。J

44、avaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。 通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。 4、将内容的生成和显示进行分离 与SERVLETS相比,JSP能提供所有SERVLETS功能,但它比用println书写和修改HTML更方便。此外

45、,你可以更明确的进行分工,WEB页面设计人员编写HTML,只需要留出地方让SERVLETS程序员插入动态部分即可。 5、 由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。 6、 作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。二)、JSP指令和脚本元素 1、JSP指令是为JSP引擎而设计的。他们并不直接产生任

46、何可见输出,而只是告诉引擎如何处理其余JSP页面。这些指令始终被括在 “”标记中。两个最重要的指令是“pagePage”和“Include”。几乎在所有JSP页面顶部都会看到“Page”指令。尽管不是必须的,但它可以让你指定:到何处查找起支持作用的Java类别: 出现Java运行问题时,将网上冲浪者引向何处: 还有你是否需要管理用户的会话级信息,这些信息可能来自多个网页述:“Include”指令可以把你的内容分成更多可管理的元素,比如包括一个普通页面页眉或页脚的元素。包含的网页可以是一个固定的HTML 页面或更多的JSP内容: 2、JSP声明用来让你定义页面级变量,以保存信息或定义JSP页面的

47、其余部分可能需要的支持方法。如果你发现代码太多,通常最好把它们写成一个独立的Java类别。声明一般都在“”标记中。一定要以分号(;)结束变量声明,因为任何内容都必须是有效的Java语句: 3、有了JSP表达式,表达式评估结果会被转换成一个字符串,并且被直接包括在输出页面之内。JSP 表达式包含在“” 标记中,没有分号,除非在加引号的字符串部分使用分号。4、代码片段/脚本片段(Scriptlets) JSP代码片段或脚本片段是嵌在“”标记中的。这种Java代码在Web服务器响应请求时就会运行。在脚本片段周围可能是原始的HTML或XML语句,在这些地方,代码片段可以使你创建条件执行代码,或要用到另

48、外一段代码的代码。例如,以下的代码组合使用表达式和代码片段,显示H1、H2、H3和H4标记中的字符串“Hello”。代码片段并不局限于一行源代码:% for (int i=1; iHHello/H5、在JSP中嵌入式注释。尽管你始终可以在文件中加入HTML注释,但用户在查看页面源代码时会看到这些注释。如果你不想让用户看到它,你就应该将其嵌入“” 标记中:JSP还有三类主要的元素:Scripting elements,Directives,和 Actions.使用Scripting elements您可以定义最终转换为Servlet的部分,Directives 使您可以控制这个Servlet的整

49、体结构,而Actions使您可以指定可重用的已有组件,另外,还可控制JSP引擎的运行。3. 课程设计内容系统页面制作包括网页的美工设计以及程序的编写,首先网页的设计要符合系统的需要不偏不倚,要做到恰到好处。页面制作的基本要素可分为四部分1 页面风格总体设计2 页面内容位置安排3 系统投入使用的生命周期,以及需要达到的效果如何。4 系统所需的时间投入安排这些都是我在本次课程设计中,总结出系统制作的一些基本要点。本系统的美工设计采用颜色比较鲜明、简洁。其次本系统在系统内容上尽量做到简单明了,使用户能够在最少的时间内熟悉系统的基本模块。一)、需求分析随着学校向全国及至世界范围的持续扩张,学生人数的增

50、加,对于学生的信息管理也越来越复杂,要求也越来越高,因此需要一个全面、详细的信息管理系统,以便完成对学生信息的管理。无纸化的环境是技术时代的一个梦想,也是许多学校和公司越来越意识到的一个真实世界。以前是由学生档案和公告栏来提供各种信息及通告新的变化,而现在这个繁杂的工作已被网站和内部计算机网络所取代。使得学生信息的管理更方便、安全。根据调查得知,现在广大学生进行信息提交的主要方式是基于文件、表格等纸介质的手工处理,学生信息管理部门信息处理工作量大,容易出错,且管理方面因人而异。然而学校网上学生信息管理系统应该覆盖各个所需功能,使各级管理人员和广大教职工在信息系统的辅助下进行工作,提高管理的整体

51、水平。使得学生信息管理更方便。学生信息管理系统,可以用集中的数据库将与人力资源管理相关的信息全面、有机地联系起来,有效地减少了信息更新和查找中的重复劳动,保证了信息的相容性,从而大大地提高了工作效率,还能使原来不可能提供的分析报告成了可能。在采用和实施学生信息管理系统之后,就会将依赖于人的过程改为依赖于计算机系统的过程。学校管理人员只要获取了相应的权限,就可以随时进入系统,直接查阅相应的信息。采用和实施学生信息管理系统不仅仅是为了提高工作效率。应该看到,在实施学生信息管理系统后,经过整合的、较为全面、准确、一致和相容的信息不仅可以让学校领导对本学校学生资源的现状有一个比较全面和准确的认识,同时

52、也可以生成综合的分析报表供学校领导人在决策时参考。二)、系统设计1)、系统的功能概述 本系统主要可以实现以下一些功能:=用户身份的选择:用户进入系统进行查询和处理数据,首先要选择登录身份,可以选择的登录身份有访客登陆和管理员登录两种。 访客登录:只能查询浏览信息。 管理员登陆:可以查询、修改数据还可以添加、删除信息以及对管理员登陆用户及密码的修改、添加、删除。=管理员注册=增加学生的基本信息数据:其中包括了对学生相片的上传,并保存在数据库中。=修改各种数据:根据学生学号修改信息。=查询数据:从数据库中调出固定学号的详细信息 。=删除数据:删除一个学号学生的所有信息。2)、系统数据流程图 该系统

53、所包含的所有功能流程图如下所示:详细查询访客登陆管理员注册学生信息管理系统添加数据修改数据管理员登陆查询数据删除数据3)、全部页面文件清单文件名功能描述baocuo.jsp当输入的管理员用户名或者密码错误时出现的提示面chaxun.jsp根据学号查询学生信息denglu.jsp管理员登录网页index.jsp用户登录网页jieshou.jsp当输入新的学生信息成功或失败后的提示页面shanchu.jsp根据学号删除学生信息shuru.jsp添加新的学生信息。并将其写入数据表xiugai.jsp根据学号修改学生的信息xueshengxinxi.jsp学生详细信息显示页面yan2.jsp修改学生信

54、息成功或失败时的提示页面yan3.jsp删除学生信息成功或失败时的提示页面yanzheng.jsp管理员登录时输入的用户名或密码错误时的提示页面zhcyzh.jsp管理员注册不合法或者成功是的提示页面zhuce.jsp管理员注册,并将合法的注册信息写入到数据表中三)、系统的具体实现 1)、管理员验证 一个完善的管理系统。不仅能够提供数据库的访问能力,还应当提供一定的安全机制,以保证系统安全及信息的保密工作。本系统的安全机制主要体现在以下几个方面: 通过注册界面将用户提交的注册信息保存在b表中,确定只有注册的用户才能访问。 通过管理员登录界面读取用户提交的登录信息并与已经保存在b表中的用户信息进

55、行检查,以决定该用户是否可以访问本系统。 (1)注册界面 为了方便管理,不同的管理员可以注册不同的用户名及密码来进入管理员系统功能,注册信息将提交到数据库中。注册页面是为了保证规定权限的管理员才能对学生信息进行修改、删除、添加等功能。注册界面如下: 如果新注册的用户名已经存在数据库中,则系统会出现提示信息“该用户名已经存在”。注册成功时,系统同样会提示注册成功,并将新注册的信息提交到数据库中,用户就可以通过新的用户名及密码进入到管理员登录界面。(2)、登录界面对于已经注册的管理员,在进入管理系统之前先要进行登录,在下面的登录界面经过身份验证后才能进入系统管理界面。只有有正确用户名及密码的管理员

56、才能进入管理员界面,对数据库中的学生信息进行添加、修改及删除等功能。 输入的用户名与密码首先与数据库中的数据进行比较,存在的用户可以直接进入管理员界面完成管理员功能,如果信息错误系统将会提示用户名或密码输入错误并返回。 2)、增加学生基本信息数据通过管理员身份验证后,管理员进入的就是学生信息增加的页面,在该页面中输入要增加的学生相关信息并提交,写入到aa学生信息表中。同时这个界面还包括管理员能够使用的其它功能,如信息的查询、修改和删除等功能。其工作界面如下:输入的学生信息可以包括学生的姓名、性别、学号以及照片,其中学号为主键,如果输入了相同的学号,系统将不写入数据库,会出现提示页面,该学号已存

57、在。 3)、查询数据查询数据,该部分是通过用户输入的欲查询的学生学号来查询该学生的详细信息。用户输入学号后如果数据库中不存在该学号的学生,系统将会提示该学生不存在信息。如果存在该学生系统将会输出该学生的详细信息,包括学生姓名、学号、性别、照片,学生详细信息显示如下: 4)、修改数据 同时,管理员还可以对已有的学生信息进行修改。这个部分是通过输入学生的学号,再将所要修改的资料输入页面,提交后即可更改学生的信息,将提交的信息在数据库中保存。对于输入的错误学号或者不存在的学号系统同样会提示输入错误并返回。其界面风格也与前面的界面相似。 5)、删除数据一样的,管理员对删除学生信息也是通过输入的学号将所

58、要删除的学生的学号输入其中,从而来删除学生的信息,即从数据库中删除。对于输入错误的学号系统也会提示输入错误,查询后再输的信息。以上是对学生信息管理系统的各个功能介绍,其具体实现代码请参看附录。4.总结分析本系统自完成时即投入到系统测试中,如系统中的各个漏洞以及即时弥补,由于时间仓促有个别地方又不足之处请谅解。首先本系统在目前的调试中,基本达到了当初的设计要求,设计上基本合理,功能基本完善,能够做到各项的查询,删除,添加,修改等基本功能。其次本系统代码在附录中只给出了一部分,还有很大一部分仍显得比较神秘,但是代码的主要轮廓应该比较清晰。相信大家看完后还是会有对我们的编程思想有相当的了解。通过对网

59、络编程的学习,以及应用工具对jsp的学习,我们初步掌握了通过编程实现学生信息管理系统的主要核心,实现了一个简单的学生信息管理系统。由于时间,以及对工具的使用并不熟悉等原因,我们设计的学生信息管理系只完成了几个主要的功能实现,还存在着一些问题有待解决,系统设计的还不够精致同时也存在着很多的不足与缺陷,这还需要更我们进一步的完善。首先是管理员的注册功能,这个功能应当设计在管理员系统管理内部,以保证其安全性,控制其注册范围,并不是任何人都能注册该项目只有通过管理员才能注册新的、认可的管理员,这就保证了管理系统的安全性、保密性。其次是学生的详细信息,在这个部分中录入的信息并不全面,只是最基本的信息,主要的就是完成了照片的录入。这部分还可以增

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!