当前位置:文档之家› 《JSP程序设计》结课大作业

《JSP程序设计》结课大作业

学号
《JSP程序设计》
结课大作业
学生姓名
专业、班级
指导教师
成绩
计算机与信息工程学院
2015 年5 月24 日
结课大作业:基于JSP的学生信息管理系统的设计与
实现
一、题目内容
基于JSP的学生信息管理系统的设计与实现
其中包括如下网页:
学生信息管理系统的登陆(login.html)
学生信息管理系统的主界面(main.jsp)
增加学生信息(add.jsp)
修改学生信息(update.jsp)
删除学生信息(delete.jsp)
查询学生信息(inquire.jsp)
二、完成过程
1.开发环境的安装
首先我是用的是Win8+Access2013+JDK1.7+MyEclipse8.5+Tomcat6.0开发测试并运行的学生信息管理系统。

开始安装的JDK,我使用的当然是最新版JDK1.8。

后来写代码的时候链接数据库的部分如何都挑不通。

找了很多地方都没有问题,一直在修改数据库连接部分的代码。

最后问题出在最新的JDK1.8删除了JDBC-ODBC桥的驱动。

换了老版本JDK1.7之后顺利解决该问题。

开始做作业的时候,老师推荐的IntelliJ IDEA。

理所当然的下载并使用了IntelliJ IDEA。

发现自己并不会用。

而且为纯英文,只好重新使用常用的MyEclipse 8.5。

开始安装的是Tomcat8.0(exe版),Myeclipse8.5只看到了Tomcat6.0的设置选项。

无奈从官网上扒下来Tomcat6.0安装并使用。

在JSP网页编写完毕测试的时候,发现部署之后打开网页报错404 。

以为自己网址输入错误,没有找到该网页。

百度了一下也没有发现自己哪里输入错误。

这个问题困扰了我很久。

只好使用Tomcat根目录下的webapps。

手动把编写的网页放进去,手动运行Tomcat。

在某次放入过程中,发现是因为我的Tomcat安装在C/Program 中需要提供管理员权限才可以修改此目录下的文件。

而Myeclipse没有这个权限。

只好删除Tomcat再次重新安装在其他目录。

解决了这个问题。

2.JSP网页编写过程
大体框架按照老师讲的样子写的,然后慢慢拼凑慢慢修改。

加上自己的额外想法。

构成的学生信息管理系统。

学生信息管理系统的登陆界面、本来想添加记住登陆的功能,可惜在实现的算法上有一点问题,可能会导致免密码登陆。

所以并没有添加此功能。

在课上,因为我们没有学习HTML语言,所以老师给我们稍微讲了一些有关于HTML的一些入门。

但是因为自己想实现的功能做出来。

单靠老师讲的还是不够的。

去找同学借了有关HTML的书,查了一些有关的HTML标记。

比如,登陆框上想做一个登陆框提示,并且开始编辑的时候就自动清空框体的初始值,onblur、onfocus等HTML编辑配合if构成了如下语句:
onblur="if(this.value=='')this.value='输入您的用户名';"
onfocus="if(this.value=='输入您的用户名')this.value='';"
在登陆框上又增加了一个账号密码的初步检查,检查账号密码是否没有输入。

由一个javaScript脚本组成的一个简单的验证:
<!-- javaScript 函数validateLogin(),用来验证用户名和密码是否为空-->
<script language="javaScript">
function validateLogin()
{
var sUserName = document.frmLogin.txtUserName.value;
var sPassword = document.frmLogin.txtPassword.value;
if( sUserName==""||sUserName=="输入您的用户名" )
{
alert("请输入用户名!");
return false;
}
if( sPassword==""||sPassword=="输入您的密码" )
{
alert("请输入密码!");
return false;
}
}
</script>
登陆之后学生信息管理系统的其他界面均使用了统一的界面,使风格统一化。

由左面的一个小型框选择操作的类型,再右边的表格中填写或者编辑信息。

本来想使用一个input框分三个按钮,点不同的按钮触发不同的表单。

但是在实现上遇到了困难,故并没有增加这个方案。

后来也考虑过网页局部刷新的问题,询问了一下老师。

发现已经超出JSP的范围了。

其他的问题基本上都存在于与数据库的交互上,像这种SQL语言
< String sql="select * from student1 where 学号="+xh+" "; >
Xh必须把数据类型强制转换为int型,才可以被识别。

并且不可以带单引号。

JA VA语言其实我是没有学习过的,一句强制类型转换竟然把我难住了、查询了一阵才找到的。

还好不是什么难题,顺利解决这个问题。

< int xh=Integer.parseInt(request.getParameter("username")); >
在数据类型的解决中,我先使用Access数据库中自带的命令行使用SQL语句进行数据库操作,运行成功在把SQL语句中的变量编写成JSP代码写入JSP网页中测试并运行。

在数据类型上有很多的问题,一项一项的排查调试。

这一过程耗费我的时间并不多,但是我的耐心真的被这个问题耗完了,简直不知道如何继续尝试下去,怎么都找不到问题所在。

几个数据项写入数据库的操作怎样都无法完成。

查询、新增、删除已经完全调通。

与数据库之间的问题搞明白了就基本上没有拦路虎了,JSP网页的测试、JSP网页的修改。

一点点的修改到没有其他的问题。

都很顺利,报错网页基本上不会在出现了。

相关主题