写一个实现增删改查的jdbcutil类
时间: 2024-05-14 17:14:55 浏览: 15
抱歉,作为语言模型,我无法提供完整的代码实现。但是,我可以给出一个jdbcutil类的模板,您可以根据需要进行修改和完善。
```java
import java.sql.*;
public class JdbcUtil {
private static final String DRIVER = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/test";
private static final String USERNAME = "root";
private static final String PASSWORD = "password";
private Connection conn;
private PreparedStatement pstmt;
private ResultSet rs;
public JdbcUtil() {
try {
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
// 获取数据库连接
public Connection getConnection() {
try {
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
// 关闭数据库连接
public void closeConnection() {
try {
if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
// 增加操作
public boolean add(String sql, Object... params) {
conn = getConnection();
try {
pstmt = conn.prepareStatement(sql);
for (int i = 0; i < params.length; i++) {
pstmt.setObject(i + 1, params[i]);
}
int count = pstmt.executeUpdate();
return count > 0;
} catch (SQLException e) {
e.printStackTrace();
return false;
} finally {
closeConnection();
}
}
// 删除操作
public boolean delete(String sql, Object... params) {
conn = getConnection();
try {
pstmt = conn.prepareStatement(sql);
for (int i = 0; i < params.length; i++) {
pstmt.setObject(i + 1, params[i]);
}
int count = pstmt.executeUpdate();
return count > 0;
} catch (SQLException e) {
e.printStackTrace();
return false;
} finally {
closeConnection();
}
}
// 修改操作
public boolean update(String sql, Object... params) {
conn = getConnection();
try {
pstmt = conn.prepareStatement(sql);
for (int i = 0; i < params.length; i++) {
pstmt.setObject(i + 1, params[i]);
}
int count = pstmt.executeUpdate();
return count > 0;
} catch (SQLException e) {
e.printStackTrace();
return false;
} finally {
closeConnection();
}
}
// 查询操作
public ResultSet query(String sql, Object... params) {
conn = getConnection();
try {
pstmt = conn.prepareStatement(sql);
for (int i = 0; i < params.length; i++) {
pstmt.setObject(i + 1, params[i]);
}
rs = pstmt.executeQuery();
return rs;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
}
```
使用示例:
```java
JdbcUtil jdbcUtil = new JdbcUtil();
String sql = "INSERT INTO user(name, age) VALUES(?, ?)";
Object[] params = {"张三", 20};
boolean result = jdbcUtil.add(sql, params);
if (result) {
System.out.println("添加成功");
} else {
System.out.println("添加失败");
}
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)