高手,请帮帮我!帮我看看这个javabean这么写对不对,谢谢!

keller_7910 2004-09-15 02:08:38
高手,请帮帮我!帮我看看这个javabean这么写对不对,谢谢!如果不对请指出


opendb.java

package opendb;

import java.sql.*;

public class opendb {
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:microsoft qlserver://localhost:1433;DatabaseName=zhang";
Connection conn = null;
ResultSet rs = null;
Statement stmt=null;
public opendb()
{
try
{
Class.forName(sDBDriver);
}
catch (java.lang.ClassNotFoundException e)
{
System.err.println("opendb(): " + e.getMessage());
}
}
public void getConnection()
{
try{
conn=DriverManager.getConnection(sConnStr,"sa","");
}catch(Exception e){}
}


public ResultSet executeQuery(String sql)
{
try
{
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch (SQLException ex)
{
System.err.println("aq.executeQuery: " + ex.getMessage());
}
return rs;
}

public void executeUpdate(String sql)
{

try
{

stmt = conn.createStatement();
stmt.executeUpdate(sql);
}
catch (SQLException ex) {
System.err.println("aq.executeQuery: " + ex.getMessage());
}


}
public void close()
{
try{
rs.close();
stmt.close();
conn.close();
}catch(Exception e){}
}

}


...全文
51 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
gogollili 2004-09-15
刚开始学,写到这个样就很好了,平时作练习用就行,不过还是有点不太好的地方:
rs.close和stmt.close()最好放在executeQuery和executeUpdate这两个方法里,
应及时的关闭。
回复
zhugegod 2004-09-15
我认为最大的问题是:你在使用Connection和Statemnet对象时应该先判断一下它们是不是null,尤其时在close的时候。还有,这个bean用来测试一下连接数据库也就算了,如果是使用的话,最好用数据连接池。
回复
keller_7910 2004-09-15
回复人: treeroot(根根) ( ) 信誉:100
这个设计明显有问题
------------------------------
帮帮我!
回复
treeroot 2004-09-15
这个设计明显有问题
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2004-09-15 02:08
社区公告
暂无公告