Java DAO & AJAX 增删改查用户数据完整代码示例
以下是利用 DAO 设计模式和 ajax 技术实现数据库表 user 的增删改查的完整代码:
- 首先,创建一个 user 类来表示数据库表中的记录:
public class User {
private int id;
private String name;
private int age;
public User(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
// Getters and setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
- 创建一个 UserDAO 接口来定义对 user 表的增删改查操作:
public interface UserDAO {
List<User> getAllUsers();
User getUserById(int id);
void addUser(User user);
void updateUser(User user);
void deleteUser(int id);
}
- 创建一个 UserDAOImpl 类来实现 UserDAO 接口,实现具体的数据库操作:
public class UserDAOImpl implements UserDAO {
// 数据库连接代码省略...
@Override
public List<User> getAllUsers() {
// 查询数据库表 user 中的所有记录,并返回一个 List<User> 对象
}
@Override
public User getUserById(int id) {
// 根据 id 查询数据库表 user 中的记录,并返回一个 User 对象
}
@Override
public void addUser(User user) {
// 向数据库表 user 中插入一条记录
}
@Override
public void updateUser(User user) {
// 更新数据库表 user 中的一条记录
}
@Override
public void deleteUser(int id) {
// 根据 id 删除数据库表 user 中的一条记录
}
}
- 创建一个 Servlet 类来处理 ajax 请求,并调用 UserDAO 的方法实现具体的数据库操作:
@WebServlet("/user")
public class UserServlet extends HttpServlet {
private UserDAO userDAO = new UserDAOImpl();
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String action = request.getParameter("action");
if (action.equals("add")) {
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
User user = new User(id, name, age);
userDAO.addUser(user);
} else if (action.equals("update")) {
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
User user = new User(id, name, age);
userDAO.updateUser(user);
} else if (action.equals("delete")) {
int id = Integer.parseInt(request.getParameter("id"));
userDAO.deleteUser(id);
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String action = request.getParameter("action");
if (action.equals("getAll")) {
List<User> userList = userDAO.getAllUsers();
// 将 userList 转换为 json 格式,并返回给前端
} else if (action.equals("getById")) {
int id = Integer.parseInt(request.getParameter("id"));
User user = userDAO.getUserById(id);
// 将 user 转换为 json 格式,并返回给前端
}
}
}
- 在前端页面中使用 ajax 来发送请求和接收响应,实现增删改查的功能:
function addUser() {
var id = $("#id").val();
var name = $("#name").val();
var age = $("#age").val();
$.ajax({
type: "POST",
url: "/user",
data: {
action: "add",
id: id,
name: name,
age: age
},
success: function() {
// 添加成功后的处理逻辑
}
});
}
function updateUser() {
var id = $("#id").val();
var name = $("#name").val();
var age = $("#age").val();
$.ajax({
type: "POST",
url: "/user",
data: {
action: "update",
id: id,
name: name,
age: age
},
success: function() {
// 更新成功后的处理逻辑
}
});
}
function deleteUser(id) {
$.ajax({
type: "POST",
url: "/user",
data: {
action: "delete",
id: id
},
success: function() {
// 删除成功后的处理逻辑
}
});
}
function getAllUsers() {
$.ajax({
type: "GET",
url: "/user",
data: {
action: "getAll"
},
success: function(data) {
// 将返回的 json 数据解析并显示在页面上
}
});
}
function getUserById(id) {
$.ajax({
type: "GET",
url: "/user",
data: {
action: "getById",
id: id
},
success: function(data) {
// 将返回的 json 数据解析并显示在页面上
}
});
}
以上就是利用 DAO 设计模式和 ajax 技术实现数据库表 user 的增删改查的完整代码。在前端页面中,通过调用相应的 ajax 函数来发送请求和接收响应,然后在回调函数中处理返回的数据。在后端,通过解析请求参数,调用相应的 UserDAO 方法来实现对数据库表的增删改查操作。
原文地址: http://www.cveoy.top/t/topic/XTf 著作权归作者所有。请勿转载和采集!