Classe de ferramenta JDBC: JDBCUtils
1. Crie um arquivo no diretório src: jdbc.properties
url=jdbc:mysql://localhost/stu_db ---数据库的url地址
user=root ---数据库的user名
pwd=123456 ---数据库的密码
driver=com.mysql.jdbc.Driver ---加载JDBC的驱动
2. Crie um pacote de utilitários e um arquivo JDBCUtils.java no pacote de utilitários como a classe de ferramenta do JDCB
3. Na classe de ferramenta JDBCUtils, dois métodos são encapsulados: getConnection (), close (stat da instrução, conexão da conexão, ResultSet rs).
- Método getConnection (): obter conexão JDBC, carregar driver JDBC
public static Connection getConnection() throws SQLException {
return DriverManager.getConnection(url, user, pwd);
}
- Método close (stat declaração, conexão de conexão, ResultSet rs): liberar recursos
public static void close(Statement stat, Connection conn, ResultSet rs) {
if (stat != null) {
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
4. Grave um bloco de código estático para obter automaticamente as informações de configuração no arquivo jdbc.properties
- Crie a classe de coleção de propriedades
//1.创建Properties集合类
Properties pro = new Properties();
- Carregar arquivo
pro.load(new FileReader(path));
- Obter atribuição de objeto
url = pro.getProperty("url");
user = pro.getProperty("user");
pwd = pro.getProperty("pwd");
driver = pro.getProperty("driver");
- Registrar motorista
Class.forName(driver);
Chamada JDBCUtils:
- Obter objeto de conexão
conn = JDBCUtils.getConnection();
- Liberar recursos
JDBCUtils.close(statement,conn,resultSet);
Código completo:
public class JDBCUtils {
private static String url;
private static String user;
private static String pwd;
private static String driver;
static {
try {
//1.创建Properties集合类
Properties pro = new Properties();
//获取src目录下文件的方式 ClassLoader 类加载器
ClassLoader classLoader = JDBCUtils.class.getClassLoader();
URL resource = classLoader.getResource("jdbc.properties");
String path = resource.getPath();
System.out.println(path);
//2.加载文件
pro.load(new FileReader(path));
//3.获取对象赋值
url = pro.getProperty("url");
user = pro.getProperty("user");
pwd = pro.getProperty("pwd");
driver = pro.getProperty("driver");
// 4.注册驱动
Class.forName(driver);
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
/*
* 获取链接对象
* */
public static Connection getConnection() throws SQLException {
return DriverManager.getConnection(url, user, pwd);
}
public static void close(Statement stat, Connection conn, ResultSet rs) {
if (stat != null) {
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}