《JAVA WEB程序设计》报告材料Word下载.docx
- 文档编号:19055855
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:17
- 大小:225.94KB
《JAVA WEB程序设计》报告材料Word下载.docx
《《JAVA WEB程序设计》报告材料Word下载.docx》由会员分享,可在线阅读,更多相关《《JAVA WEB程序设计》报告材料Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
2.学生信息管理
该模块实现学生信息查询、学生信息添加、学生信息修改、学生信息删除功能。
3.教师信息管理
该模块实现教师信息查询、教师信息添加、教师信息修改、教师信息删除。
4.课程信息管理
该模块实现课程信息查询、课程信息添加、课程信息修改、课程信息删除。
5.选课信息管理
该模块实现学生选课查询、学生选课添加、学生选课删除、学生选课修改。
6.成绩信息管理
该模块实现学生成绩查询、学生成绩修改、学生成绩录入、学生成绩删除。
1.管理员功能需求:
学生信息管理:
包括学生信息查询、学生信息添加、学生信息修改、学生信息删除
教师信息管理:
包括教师信息查询、教师信息添加、教师信息修改、教师信息删除
课程信息管理:
包括课程信息查询、课程信息添加、课程信息修改、课程信息删除
选课信息管理:
包括学生选课查询、学生选课添加、学生选课删除
成绩信息管理:
包括学生成绩查询、学生成绩修改、学生成绩录入
2.教师功能需求:
教师信息查询
教师任课信息查询
学生成绩查询、学生成绩修改、学生成绩录入
3.学生功能需求:
学生信息查询
学生选课信息查询
学生成绩查询
2.相关技术与原理介绍
(对Tomcat、MySQL、JSP、JDBC、JAVABEAN等技术进行简要介绍)
1.Tomcat:
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
2.MySQL:
MySQL是一个关系型数据库,由瑞典
MySQLAB公司开发,目前属于
Oracle
旗下公司。
MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL软件采用了双授权政策(本词条"
授权政策"
),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
由于其社区版的性能卓越,搭配
PHP
Linux和
Apache
可组成良好的开发环境,经过多年的web技术发展,在业内被广泛使用的一种web服务器解决方案之一,称之为LAMP。
3.JSP:
JSP全名为JavaServerPages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
4.JDBC:
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
5.JAVABEAN:
JavaBean是一种JAVA语言写成的可重用组件。
为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。
JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。
众所周知,属性名称符合这种模式,其他Java类可以通过自身机制发现和操作这些JavaBean的属性。
3.系统分析与设计
3.1系统功能分析
(分析系统功能并给出系统功能结构图)
一:
系统功能:
查询可以查询到学生的学号,姓名,性别,年龄,分页显示内容;
删除可以根据学生的学号进行删除,选择一个学号然后删除整条记录。
查询可以查到教师的教师号,姓名,性别,职位,分页显示内容;
修改和删除都是根据教师号,修改和删除整条教师记录。
查询可以查到课程号,课程名,学分和教师编号;
删除和修改都是根据课程号进行删除和修改。
查询可以根据学生学号来进行查看学生的序号,学号,姓名,课程号,课程名,学期;
删除也是根据学生学号进行逐条删除。
成绩查询可以查询到学生的序号,学号,课程号,成绩。
二:
系统功能结构图
3.2系统结构分析
(对系统的目录结构及分层结构进行分析与说明)
项目总体结构设计
Java类存放于src目录,样式文件、图片资源、Jsp文件存放于WebRoot目录,目录结构如下图:
2.包结构设计
包名称
作用
bean
DBConnectionManager获取并返回数据库连接
vo
包括Student学生、Teacher教师、Course课程、Score分数的JAVABEAN类,可实现各自的set与get方法
dao
包括LoginDao、StudentDao、TeacherDao、CourseDao、ScoreDao的JAVABEAN组件,实现对数据库的访问操作
servlet
包含各业务的控制器组件
3.项目结构设计
文件及目录名称
css
系统样式文件目录
image
系统图片目录
studentEntry
学生权限访问资源目录
studentManage
管理员权限访问资源目录
TeacherEntry
学生教师权限访问资源目录
Index.jsp
系统入口,提供登录界面
loginAction.jsp
登录处理程序
Logout.jsp
登录注销处理
3.3数据库设计
(对数据库进行逻辑设计,对各表结构进行说明)
学生表:
学号,姓名,性别,年龄
教师表:
教师编号,姓名,性别,职称
课程表:
课程编号,课程名,学分,教师编号
选课表:
编号,学号,课程号,学期,分数
成绩表:
编号,学号,课程号,类型,分数
4.系统实现
4.1教师信息管理模块实现
(分析各模块设计思路及实现流程,给出关键代码并对代码进行说明,并给出实现效果截图显示)
教师信息管理模块包括对教师信息的增删改查,查询部分显示教师的教师号,姓名,性别,职称;
删除部分根据教师编号来进行删除;
修改部分也通过选择相应的教师编号进行修改。
关键代码:
intintPageSize;
//一页显示的记录数
intintRowCount;
//记录总数
intintPageCount;
//总页数
intintPage;
//待显示页码
StringstrPage;
inti;
intPageSize=5;
这部分代码是对分页显示内容的展现,查询的时候可以分页显示查询的内容;
ArrayListal=tdao.getAllTeachers();
inti=0;
while(i<
al.size()){
tea=(Teacher)al.get(i);
StringTNo=tea.getTeano();
这是通过选择一个教师号来删除整条教师记录;
<
selectname="
id"
>
<
%StringTNo=null;
StringTname=null;
StringSex=null;
StringTitle=null;
Stringsql="
select*fromt_teacher"
;
//ResultSetrs=stmt.executeQuery(sql);
ArrayListal=tdao.getAllTeachers();
TNo=tea.getTeano();
这部分代码,先选择一个编号,然后对空初值进行添加,因为其关联了数据库,所以能把信息添加进数据库;
functioncheck(){
if(addform.teano.value=="
"
){
alert("
教师号不能为空!
);
addform.teano.focus();
returnfalse;
}
if(addform.teaname.value=="
教师姓名不能为空!
addform.teaname.focus();
<
td>
教师号<
/td>
inputtype="
text"
name="
teano"
/tr>
tr>
姓名<
teaname"
这部分代码给出判断,如果教师号为空,则显示“教师号不能为空!
”然后定义了教师号等的类型,输入相应的教师号等就能添加进数据库。
4.2成绩信息管理模块实现
%=sco.getId()%>
%=sco.getStuno()%>
%=sco.getCourseno()%>
%=sco.getScore()%>
这段代码对成绩查询的编号,学号,课程号和成绩进行定义,显示结果如下图:
%StringId=null;
StringStuno=null;
StringCourseno=null;
StringType=null;
StringScore=null;
select*fromt_score"
ArrayListal=sdao.getAllScores();
sco=(Score)al.get(i);
Id=sco.getId();
这段代码先让用户选择一个id号,然后分别定义学号,课程号,类型,分数,并给定初值为0,然后关联数据库,使得输入进去的数据能添加进数据库;
具体实现如下图:
if(parseInt(addform.score.value)<
0){
alert("
成绩不能小于0!
addform.score.focus();
returnfalse;
if(parseInt(addform.score.value)>
100){
成绩不能大于100!
这段代码对学生成绩的范围进行限制,一旦输入的成绩不在定义的范围内,就会出现报错提示,如下图:
若成绩在定义的范围内,就会添加成功,如下图:
5.总结与体会
5.1工作总结
(总结本次工作内容,收集开发过程中异常错误,对遇到的异常错误进行总结并说明是如何解决)
本次课程设计,我选择的是老师上课做过的学生信息管理系统,在上课做完的以管理员方式登录的学生信息登录的基础上,再增加了以管理员方式登录的教师信息管理,课程信息管理,选课信息管理,成绩信息管理,以及做了以教师方式登录的教师信息管理,课程信息管理,成绩信息管理。
虽说老师上课给了样板,但真正做起来的时候要自己修改的地方还是很多,在做课程设计的过程中遇到了很多问题,有的自己花了大量时间去解决,有的通过询问同学,有的通过询问老师来解决,最终完成了本次设计,
异常错误:
1.问题:
学生信息删除的时候下拉框中都是0001
解决方法:
在代码中加一个while型循环
2.问题:
在添加课程信息时添加不进去
解决办法:
使用js页面跳转的方法使页面跳转过去
3.问题:
一开始以为lookcourse是课程查询,结果出现了好多错误
再建一个查询课程的jsp,并添加Dao包和Vo包
4.问题:
教师信息删除的时候选择完之后删除不掉,出现500的错误
5.2改进设想
(分析系统存在不足,提出改进设想)
1.添加操作无需密码;
删掉密码这一段代码。
2.修改成绩时根据学生学号来修改,而不是序号;
可以把下拉框的代码运用到学号上,而不是序号上。
3.成绩查询时也可以根据学号,点击相应的学号查询相对应的学生的成绩;
4.删除课程信息时只显示删除成功,最好能把删除掉的具体的课程和其他信息显示出来。
5.系统中最好给出批量删除的功能;
可以提供选择按钮,对选择的选项可以进行批量删除。
6.增加条件检索功能,例如可输入学生姓名或学号来检索该学生信息。
查询课程及成绩信息时可选择学号或学期来检索。
7.成绩查询时显示分页内容,但由于记录较多,一页显示5行记录显得有点少,要查找起来有点麻烦;
可以在代码中设置一页显示多一点的记录,减少检索时间。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA WEB程序设计 JAVA WEB程序设计报告材料 JAVA WEB 程序设计 报告 材料