首先我们先自定义一个类
public class TOOL(){
}
因为我们要获取连接对象调用
getConnection()这个方法;(注意:这个方法的返回值为:Connection);
里面的参数为url,user,password这三个属性;所以我们把这三个属性进行包装,包装到属性集合列表中,所以我们现在成员变量位置声明这三个属性;
private static String url = null;
private static String user = null;
private static String password = null;
private static String dir = null;
然后我们设置一个静态代码块;(为的就是在类刚开始加载时就先加载静态代码块里面的东西);
static{
}
然后创建一个属性集合列表,把属性加载到属性集合列表中;
static {
try {
Properties properties = new Properties();
InputStream resourceAsStream = Tool.class.getClassLoader().getResourceAsStream("jdbc.properties");
properties.load(resourceAsStream);
dir = properties.getProperty("dir");
url = properties.getProperty("url");
user = properties.getProperty("user");
password = properties.getProperty("password");
// 注册驱动
Class.forName(dir);
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
里面我们可以看到,属性加载后用properties特有方法getpropery()通过键获取对应的属性值;
第一步注册驱动也包装到了静态代码块中;
然后第二步就是包装一个获取连接对象的方法;
public static Connection getConnection() {
try {
Connection s = DriverManager.getConnection(url, user, password);
return s;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
接着最后一步我们要释放资源;同样包装一个方法:
public static void close(Statement stmt, Connection conn) {
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
这样,我们就完成了基本工具类的包装;