JavaBean实现两个方法,第1个方法,方法名自定,无参数。该方法调用DbConnection.java的静态方法建立与数据库的连接,然后查询数据库检索jspuser表中的所有记录,每条记录的数据封装在一个JspUser Bean中,所有的JspUser Bean对象组成一个List对象,返回List对象。第2个方法,参数为用户ID,整数类型,从jspuser表中删除指定ID的用户记录,返回整数类型写个代码
时间: 2024-02-24 10:56:33 浏览: 66
使用JavaBean连接数据库
好的,这里是实现这两个方法的JavaBean代码:
```java
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class JspUserDao {
private static final String DB_URL = "jdbc:mysql://localhost:3306/test";
private static final String DB_USER = "root";
private static final String DB_PASSWORD = "password";
public List<JspUser> getAllUsers() {
List<JspUser> userList = new ArrayList<>();
try {
Connection conn = DbConnection.getConnection(DB_URL, DB_USER, DB_PASSWORD);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM jspuser");
while (rs.next()) {
JspUser user = new JspUser();
user.setId(rs.getInt("id"));
user.setUsername(rs.getString("username"));
user.setPassword(rs.getString("password"));
user.setEmail(rs.getString("email"));
userList.add(user);
}
rs.close();
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
return userList;
}
public int deleteUserById(int id) {
int rowsDeleted = 0;
try {
Connection conn = DbConnection.getConnection(DB_URL, DB_USER, DB_PASSWORD);
PreparedStatement stmt = conn.prepareStatement("DELETE FROM jspuser WHERE id=?");
stmt.setInt(1, id);
rowsDeleted = stmt.executeUpdate();
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
return rowsDeleted;
}
}
```
这个JavaBean实现了两个方法:`getAllUsers()` 和 `deleteUserById(int id)`。
`getAllUsers()` 方法查询数据库,检索 `jspuser` 表中的所有记录,并封装到 `JspUser` 对象中,最后将所有 `JspUser` 对象封装到一个 `List<JspUser>` 中返回。
`deleteUserById(int id)` 方法删除 `jspuser` 表中指定 ID 的用户记录,并返回受影响的行数。
在这个JavaBean中,我们使用了一个 `DbConnection` 类来建立数据库连接。这个类是一个工具类,负责建立和关闭数据库连接。下面是 `DbConnection` 类的代码:
```java
import java.sql.*;
public class DbConnection {
public static Connection getConnection(String url, String user, String password) throws SQLException {
Connection conn = DriverManager.getConnection(url, user, password);
return conn;
}
public static void closeConnection(Connection conn) {
if (conn == null) {
return;
}
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void closeStatement(Statement stmt) {
if (stmt == null) {
return;
}
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void closeResultSet(ResultSet rs) {
if (rs == null) {
return;
}
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
这个类包含了一些静态方法,用于建立和关闭数据库连接、Statement 和 ResultSet 对象。
阅读全文