import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
//不能继承
public final class JdbcUtilsTimeout {
private String url = "jdbc:sqlserver://localhost:1433;DataBaseName=HXParserDB";
private String username = "sa";
private String password = "123";
//当需要的时候创建
private static JdbcUtilsTimeout instance = null;
//解决多线程并发问题,对象实例同步
public static JdbcUtilsTimeout getInstance(){
if(instance==null)
synchronized (JdbcUtilsTimeout.class) {
if(instance==null)
instance = new JdbcUtilsTimeout();
}
return instance;
}
private JdbcUtilsTimeout() {
}
static {
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
.newInstance();
} catch (Exception e) {
throw new ExceptionInInitializerError(e);
}
}
public Connection getConnection() throws Exception {
return DriverManager.getConnection(url, username, password);
}
public static void free(ResultSet rs, PreparedStatement pstmt, Connection conn) {
try {
if (rs != null)
rs.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (pstmt != null) {
pstmt.close();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}