数据库的操作
我在做jsp网站和java的小系统时发现在连接数据库,如果每次一个连接数据库时都要写一个连接数据库的代码,现在我想把连接数据库的代码封装起来.封装以后在使用时只要在开头引入就可以了.
我的问题就是引入以后怎么用?
[解决办法]
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnection {
public static Connection getConnection() {
String drivrename = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dabaseurl = "jdbc:sqlserver://localhost:1433;DatabaseName=mybase";
String dbUser = "sa";
String dbPassword = "fuhui";
Connection con = null;
try {
Class.forName(drivrename);
con = DriverManager.getConnection(dabaseurl, dbUser, dbPassword);
return con;
} catch (java.lang.ClassNotFoundException e) {
System.err.println(e);
} catch (SQLException er) {
System.err.println(er.getMessage());
}
return null;
}
[解决办法]
推荐用数据库连接池,不要自己写代码
[解决办法]
像2楼那样封装一个DBConnection类,下面给一个应用的实例
public class Test{
public static void main(String[] args){
Connection con;
Statement st;
ResultSet rs;
con=DBConnection.getConnection();//直接通过DBConnection类的getConnection方法获得Connection对象
if(con==null){
System.out.println("数据库连接失败");
return;
}
st=con.CreatStatement();
rs=st.executeQuery("select num,name,age from students where num='007'");
while(rs.next()){
System.out.println(rs.getString("num"));
System.out.println(rs.getString("name");
System.out.println(rs.getInt("age"));
}
}
[解决办法]
建议楼主参考apache dbUtils项目,它已经封装了database链接pool管理功能,也可以直接拿来用。
http://commons.apache.org/dbutils/
[解决办法]
推荐3楼..自己要写的话,做成工具类
[解决办法]
应用:
DataBase db=new DataBase(); if(!db.connect()){ db.connect(); } Statement st; ResultSet rs; st=con.CreatStatement(); rs=st.executeQuery("select num,name,age from students where num= '007 '"); while(rs.next()){ System.out.println(rs.getString("num")); System.out.println(rs.getString("name"); System.out.println(rs.getInt("age")); }
[解决办法]
用数据库联接池,现在实际项目都是使用数据库联接池
[解决办法]
二楼跟你写得很清楚了 数据库链接类都封装好了
//生成链接
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnection {
public static Connection getConnection() {
String drivrename = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dabaseurl = "jdbc:sqlserver://localhost:1433;DatabaseName=mybase";
String dbUser = "sa";
String dbPassword = "fuhui";
Connection con = null;
try {
Class.forName(drivrename);
con = DriverManager.getConnection(dabaseurl, dbUser, dbPassword);
return con;
} catch (java.lang.ClassNotFoundException e) {
System.err.println(e);
} catch (SQLException er) {
System.err.println(er.getMessage());
}
return null;
}
//调用
import 包 .DBConnection
private Connection con = null;
PreparedStatement ps = null;
Connection con = DBConnection.getConnection();//取得链接
数据库执行完后记得关闭链接
[解决办法]
这样运行效率差,看一下连接池吧。