求助:一个JSP的奇怪问题<急用>

chuxinfo 2004-10-04 11:53:39
我用JSP来实现用一张数据表(DBF格式)更新另外一张数据表(MYSQL)(先读表中一条记录,再查询另外一张表是否有相关记录,有则更新,无则添加,直到读取数据表完毕),发生一个奇怪的问题:
我的数据表目前有2000多条记录,结果它才读取到第40条记录(也就是说它更新或插入了另外一张表的40条记录),往下就不操作了,但是也不提示任何错误!
我的JSP代码,只是在数据库连接部分采用JAVABEAN,其它操作数据表均使用简单的JSP代码完成,也没采用到存储过程.
请各位帮忙,我该怎么办?我是等着用的!
...全文
68 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
chuxinfo 2004-10-04
  • 打赏
  • 举报
回复
会不会是TOMCAT中要设置什么的缓冲存储器?
chuxinfo 2004-10-04
  • 打赏
  • 举报
回复
但是,我以前运行成功过,后来只是在数据表中改了两个字段名和加了一个字段上去,就这发生这样问题了...
naxin 2004-10-04
  • 打赏
  • 举报
回复
用连接池吧,


你这是典型的代码写的不好,耗尽了数据库的连接.
chuxinfo 2004-10-04
  • 打赏
  • 举报
回复
package dbconn;
import java.sql.*;

public class dbconn {
private Connection conn = null;
private Statement stmt = null;
private ResultSet rs = null;
//使用构造方法进行数据库连接初始化
public dbconn() {
try {
Class.forName("org.gjt.mm.mysql.Driver");
}
catch(java.lang.ClassNotFoundException e){
System.err.println("加载失败!");
}
}
//执行SQL命令,并返回记录集
public ResultSet executeQuery(String sql) {
rs = null;
try {
conn = DriverManager.getConnection("jdbc:mysql://localhost/apex","root","");
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex) {
System.err.println("ResultSet.executeQuery: " + ex.getMessage());
}
return rs;
}
//执行SQL命令,更新数据库,但不返回任何数值
public void executeUpdate(String sql) {
stmt = null;
rs=null;
try {
conn = DriverManager.getConnection("jdbc:mysql://localhost/apex","root","");
stmt = conn.createStatement();
stmt.executeQuery(sql);
stmt.close();
conn.close();
}
catch(SQLException ex) {
System.err.println("ResultSet.executeQuery: " + ex.getMessage());
}
}

//关闭记录集
public void closeStmt(){
try{
stmt.close();
}
catch(SQLException e){
e.printStackTrace();
}
}
//关闭数据库连接
public void closeConn(){
try{
conn.close();
}
catch(SQLException e){
e.printStackTrace();
}
}
}
就是这些
禽兽v5 2004-10-04
  • 打赏
  • 举报
回复
可能是你的Connection对象没关闭,资源耗尽。

把你的javabean代码拿出来看看。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧