包含数据库并且实现增删改查的j简单avaweb项目代码
时间: 2024-03-06 20:46:32 浏览: 16
好的,以下是一个简单的Java Web项目,包含数据库并实现增删改查功能的代码:
1. 首先,需要创建一个数据库表,例如:
```
CREATE TABLE user (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
PRIMARY KEY (id)
);
```
2. 创建Java类User,用于定义用户的属性:
```
public class User {
private int id;
private String name;
private String email;
// 构造方法
public User(int id, String name, String email) {
this.id = id;
this.name = name;
this.email = email;
}
// getter和setter方法
// ...
}
```
3. 创建一个名为UserDAO的Java类,用于实现对用户表的增删改查操作:
```
public class UserDAO {
// 数据库连接信息
private String jdbcUrl = "jdbc:mysql://localhost:3306/test";
private String jdbcUsername = "root";
private String jdbcPassword = "123456";
// 插入用户
public void addUser(User user) {
try (Connection conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword)) {
String sql = "INSERT INTO user (name, email) VALUES (?, ?)";
PreparedStatement statement = conn.prepareStatement(sql);
statement.setString(1, user.getName());
statement.setString(2, user.getEmail());
statement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
// 根据ID查询用户
public User getUserById(int id) {
User user = null;
try (Connection conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword)) {
String sql = "SELECT * FROM user WHERE id = ?";
PreparedStatement statement = conn.prepareStatement(sql);
statement.setInt(1, id);
ResultSet rs = statement.executeQuery();
if (rs.next()) {
user = new User(rs.getInt("id"), rs.getString("name"), rs.getString("email"));
}
} catch (SQLException e) {
e.printStackTrace();
}
return user;
}
// 查询所有用户
public List<User> getAllUsers() {
List<User> users = new ArrayList<>();
try (Connection conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword)) {
String sql = "SELECT * FROM user";
Statement statement = conn.createStatement();
ResultSet rs = statement.executeQuery(sql);
while (rs.next()) {
User user = new User(rs.getInt("id"), rs.getString("name"), rs.getString("email"));
users.add(user);
}
} catch (SQLException e) {
e.printStackTrace();
}
return users;
}
// 更新用户信息
public void updateUser(User user) {
try (Connection conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword)) {
String sql = "UPDATE user SET name = ?, email = ? WHERE id = ?";
PreparedStatement statement = conn.prepareStatement(sql);
statement.setString(1, user.getName());
statement.setString(2, user.getEmail());
statement.setInt(3, user.getId());
statement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
// 删除用户
public void deleteUser(int id) {
try (Connection conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword)) {
String sql = "DELETE FROM user WHERE id = ?";
PreparedStatement statement = conn.prepareStatement(sql);
statement.setInt(1, id);
statement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
4. 在Web应用程序中使用UserDAO类,例如在Servlet中实现增删改查操作:
```
@WebServlet("/user")
public class UserServlet extends HttpServlet {
private UserDAO userDAO;
@Override
public void init() throws ServletException {
userDAO = new UserDAO();
}
// 新增用户
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name");
String email = request.getParameter("email");
User user = new User(0, name, email);
userDAO.addUser(user);
response.sendRedirect("list.jsp");
}
// 查询所有用户
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<User> users = userDAO.getAllUsers();
request.setAttribute("users", users);
request.getRequestDispatcher("list.jsp").forward(request, response);
}
// 根据ID查询用户
protected void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
String email = request.getParameter("email");
User user = new User(id, name, email);
userDAO.updateUser(user);
response.sendRedirect("list.jsp");
}
// 根据ID删除用户
protected void doDelete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
int id = Integer.parseInt(request.getParameter("id"));
userDAO.deleteUser(id);
response.sendRedirect("list.jsp");
}
}
```
这是一个简单的Java Web项目,包含了数据库并实现了增删改查功能。请注意,这只是一个示例代码,实际应用中需要根据具体情况进行修改和优化。