下面是一些关键部分的代码

数据库的连接代码:

<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%@ page import="java.sql.*" %>
<%
String driverName="com.mysql.jdbc.Driver";
String userName="root";
String userPasswd="";
String dbName="test";
String tableName="jiaoshi";
String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connection=DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql="SELECT * FROM "+tableName;
ResultSet rs = statement.executeQuery(sql);
ResultSetMetaData rmeta = rs.getMetaData();
int numColumns=rmeta.getColumnCount();
rs.close();
statement.close();
connection.close();
%>

 

插入数据的核心代码:

<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>插入新记录</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="insert2.jsp">
<table width="527" border="1" align="center">
<caption>
插入新纪录
</caption>
<tr>
<td width="142">姓名:</td>
<td width="369"><label>
<input type="text" name="name" />
</label></td>
</tr>
<tr>
<td>单位:</td>
<td><label>
<input type="text" name="danwei" />
</label></td>
</tr>
<tr>

      .

.

.
<td>得分:</td>
<td><label>
<input type="text" name="defen" />
</label></td>
</tr>
<tr>
<td>备注:</td>
<td><label>
<textarea name="beizu" rows="5"></textarea>
</label></td>
</tr>
</table>
<p> 注意:请将所有项目填写完全!!!</p>
<p>
<label>
<input type="submit" name="Submit" value="提交">
</label>
<label>
<input type="reset" name="Submit2" value="重置">
</label>
</p>
</form>
</body>
</html>

 

4   设计中遇到的问题及解决办法

(1)安装MySQL时的问题:就是装不上,要不就是装上不能用。

解决办法:安装前一定要将瑞星全功能软件关掉,防火墙也要关掉,为保险,360安全卫士我也关掉了,再次安装,可以了。

(2)数据库的驱动问题:MySQL无法使用ODBC连接(至少我没找到连接方法),我连接MySQL5.0时用的JDBC连接,去官网下载相应版本驱动,配好后就是连不上(其实是没配好)。

配置方法:驱动所放的位置:C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib、C:\Program Files\Java\jdk1.6.0_18\lib、C:\Program Files\Java\mysqlforjdbc(此文件夹是我新建的),最后一定要注意在环境变量里写好路径,最好全都写进去。

(3)无法将数据库中的信息调出来,数据库建好后,写好查询页面每次查询时都报错,语法错误。

解决办法:其实是数据库中表的名字出了问题,我的表的名字里加了个括号,非法字符,遇到此类问题时,先在页面中查询,调不出来就到数据库中查询,看一下在数据库中能不能调出来,结果可想而知,同样报错,对表中任意字段进行查询时全都报相同错误,查看表名,重命名一下,可以调出,去掉括号,也可以调出,找到问题,OK!

(4)关于乱码问题:写好代码后,查询某个人时输入姓名(汉字)什么都输不出来,但把名字改成英文字母就可以输出来

解决办法:第一,将JSP编码方式改为GB2312,My Eclipse中默认为英文编码,加上request.setCharacterEncoding("gb2312");

或者String str = request.getParameter("name");

      byte b[] = str.getBytes("ISO-8859-1");

str = new String(b);

其中的name视情况而定。

第二:查看表的编码方式:show variables like '%char%';,我全改成了GB2312,命令:set character_set_server=utf8;(例子)

第三:看一下tomcat的配置文件conf文件夹里的server.xml文件把编码方式改成GB2312,不过一般这里不会出问题,但我还是改了一下,结果不管用。

第四:先在JSP调用,不行,然后在navicat(MySQL管理工具)中查询,可以,没有乱码现象,然后,在MySQL Command Line Client命令行里调用,出问题了,乱码!全都是问号了,然后改数据库MySQl配置文件,找到根目录下的my.ini配置文件,把default-character-set=后的内容改成GB2312,然后别忘了重新启动MySQL,再在JSP中测试,OK,搞定(问题可能出在navicat上,可能是navacat自动将数据库里的数据转码了,但我调用的时候是调用的数据库中的数据,不是navicat里的,这就造成了在navicat里汉字可以显示,但在调用的时候乱码了)。

第五:在登陆成功进入主页面的时候,又乱码了,直接把链接的那条语句去掉了,另加了一条跳转语句,也就是<%response.setHeader("Refresh","5;URL=jinru.jsp");%>,我的页面进入的时候会停顿5秒。

5   教师论文信息管理系统总结

经过两个星期的学习,我们终于把这个系统做出来了,虽然做得不是很完美,但是却是我们这个小组的每一个成员辛苦了工作的成果,我们为此感到开心。我们这一组的JAVA都学得不是很好,上课也听得不是很明白,所以在刚开始做的时候,我们每一个人都认为这是一个不可能完成的任务,刚开始我们也想过要放弃,想想这么难怎么可能完成呢!可是后来看到其他组都在认真的做任务,我们想想也不能这样放弃,至少也得试试,如果不会的话,再去请教会的人,学习不就是从不会到会的!

我们把任务分配好,就开始做每一个版块的功能模块,,我们四个人要完成一个系统确实很困难,尤其是在整体实力不强的情况下。在实训的过程中我们还学到了JAVA的很多知识,最后一点时间是我们大家用来共同讨论难点,交流心得。就这样,实训的时间就结束了,我们也总算把这个管理系统弄出来了。在实训期间,让我重新认识了JAVA这门课,在还没有实训的时候,我是对他没有一点兴趣也没有了,但是经过三周的实训让我对它产生了浓厚的兴趣,我想学习以后学习JAVA我不会像以前那样漫不经心的。本教师论文管理系统基本功能已实现,有些功能存在一些局限性,编程代码的复用性不太完善,页面设计比较简单,缺乏修饰效果,欠缺CSS样式,功能模块的实现需要进一步完善。

 

 

参考文献

[1]余韵.JSP2.0技术冲入门到精通[M].北京:中国铁道出版社.

[2]刘中兵.JSP数据库项目案例导航[M].北京:清华大学出版社.

[3]耿祥义. JSP基础教程[M].北京:清华大学出版社.

[4]王诚梅,袁然,王艳. JSP案例开发集锦[M].北京:电子工业出版社.

[5]李芝兴,杨瑞龙. Java EE Web 编程[M].北京:机械工业出版社.