连接数据库的BEAN!!

cityroom 2003-11-19 04:07:19
帮我看看这个连接数据库的BEAN有什么错误?为什么在服务器上总出现空指针错误

空指针问题在executeQuery()方法那里

package ****;

import java.sql.*;
import java.lang.*;
public class conn{
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;

String sDBDriver="org.gjt.mm.mysql.Driver";
String sConnStr="jdbc:mysql://localhost/ebaroom_cxc_cc?user=******&password=*****useUnicode=true&characterEncoding=ISO-8859-1";

public conn(){
try{
Class.forName(sDBDriver);
conn=DriverManager.getConnection(sConnStr);
}catch(SQLException e){
System.err.println("错误11:"+e.getMessage());
}catch(java.lang.ClassNotFoundException e){
System.err.println("错误22:"+e.getMessage());
}
}

public ResultSet executeQuery(String sql) {
try {
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(sql);
}
catch(SQLException ex) {
System.err.println("错误33" + ex.getMessage());
System.err.println("错误44 " + sql);
}
return rs;
}

public boolean executeUpdate(String sql) {

try {
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
stmt.executeUpdate(sql);
return true;
}
catch(SQLException ex) {
System.err.println("aq.executeUpdate: " + ex.getMessage());
System.err.println("aq.executeUpadatestrSQL: " + sql);
}
return false;
}

public void close(){
try{
if(rs!=null){
rs.close();
rs=null;
}
if(stmt!=null){
stmt.close();
stmt=null;
}
if(conn!=null){
conn.close();
conn=null;
}

}catch(Exception e){
System.err.println("错误3:"+e.getMessage());
}
}
}
...全文
37 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cityroom 2003-11-25
  • 打赏
  • 举报
回复
这个我知道的,是可以连接数据库的,我是想知道,有没有更好一点的程序?
hellowiner 2003-11-24
  • 打赏
  • 举报
回复
String sConnStr="jdbc:mysql://localhost/ebaroom_cxc_cc?user=******&password=*****useUnicode=true&characterEncoding=ISO-8859-1";
在password和useUnicode之间应该有一个&符号,
我把他改了以后,你的程序就能连上数据库,没有问题。请检查一下你的其他程序
giftxi 2003-11-24
  • 打赏
  • 举报
回复
你的SQL变量根本就是个NULL,你随便放点东西进去看看!
cityroom 2003-11-24
  • 打赏
  • 举报
回复
还没有解决。最近要去外地。回来后一定结贴,请不要着急
xd1980 2003-11-19
  • 打赏
  • 举报
回复
你试着在这里加上rs.next();(我也说不准,我也碰到过,具体在哪里加,我记不清了)

public ResultSet executeQuery(String sql) {
try {
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

rs.next();--------------------------)))))多试几个地方

rs=stmt.executeQuery(sql);
}

81,091

社区成员

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

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