做一个类连接数据库?为什么要这么做?

huang3407 2007-09-25 11:10:33
public static Connection getConn(){
Connection conn = null;
String driverclass = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url = "jdbc:microsoft:sqlserver://localhost:1433;databasename=webstore";
String user = "sa";
String password = "";
try {
Class.forName(driverclass);
}
catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
try {
conn = DriverManager.getConnection(url, user, password);
}
catch (SQLException ex1) {
ex1.printStackTrace();
}

return conn;
}

/**
* 关闭数据库资源
* @param rs ResultSet
* @param st Statement
* @param conn Connection
*/
public static void tryCloseDB(ResultSet rs,Statement st,Connection conn){

if (rs != null){

try {
rs.close();
}
catch (SQLException ex) {
}
}

if(st != null){

try {
st.close();
}
catch (SQLException ex1) {
}
}

if(conn != null){

try {
conn.close();
}
catch (SQLException ex2) {
}
}

}

/**
* 执行数据库的增、删、改操作
* @param sql String
* @return boolean
*/
public static boolean executeSql(String sql){

Connection conn = getConn();
Statement st = null;
int i = -1;
try {
st = conn.createStatement();
i = st.executeUpdate(sql);
}
catch (SQLException ex) {
}finally{

tryCloseDB(null,st,conn);
}
if (i>0){
return true;
}else{
return false;
}
}

}

要用到static?
...全文
121 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xian_hf 2007-09-26
  • 打赏
  • 举报
回复
方便
正解
  • 打赏
  • 举报
回复
如果是这样的话,要把 构造器改为 private
  • 打赏
  • 举报
回复
静态工厂方法啊
star52888 2007-09-26
  • 打赏
  • 举报
回复
楼上的正解
dmz2 2007-09-26
  • 打赏
  • 举报
回复
是不是为了调用方便,直接 类名.方法名 就可以了
不用 new 类()


性能方面没有研究过
manbaum 2007-09-25
  • 打赏
  • 举报
回复
不用static一样可以,你试试把3个static都删掉。

62,623

社区成员

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

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