fix: homework7 dao issue

This commit is contained in:
2025-05-26 16:58:40 +08:00
parent fb4ff04aac
commit 94186f6e56
6 changed files with 93 additions and 9 deletions
@@ -2,7 +2,11 @@
* @name: UsersDao.java
* @author: msksbr
* @date: 2025-05-26
* @version: 1.0
* @version: 1.11f: fix id absence issue
* 1.1f: fix table name issue
* 1.1: fix date format issue
* 1.0f: fix update method issue
* 1.0
* @description: UsersDao class for homework 7
*/
package com.msksbr.homework7.dao;
@@ -11,30 +15,35 @@ import com.msksbr.homework7.domain.User;
import com.msksbr.homework7.util.JDBCUtils;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
public class UsersDao {
private final JDBCUtils jdbcUtils = new JDBCUtils();
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
private User user = new User();
public void addUser(User user) {
this.user = user;
String sql = "INSERT INTO users (username, password, email, birthday) VALUES ('" + user.getUsername() + "', '" + user.getPassword() + "', '" + user.getEmail() + "', '" + user.getBirthday() + "')";
jdbcUtils.runQuery(sql);
String sql = "INSERT INTO User (id, username, password, email, birthday) " +
"VALUES (" + user.getId() + ", '" + user.getUsername() + "', '" +
user.getPassword() + "', '" + user.getEmail() + "', '" +
sdf.format(user.getBirthday()) + "')";
jdbcUtils.runUpdate(sql);
}
public void deleteUser(int id) {
String sql = "DELETE FROM users WHERE id = " + id;
jdbcUtils.runQuery(sql);
String sql = "DELETE FROM User WHERE id = " + id;
jdbcUtils.runUpdate(sql);
}
public void updateUser(User user) {
this.user = user;
String sql = "UPDATE users SET username = '" + user.getUsername() + "', password = '" + user.getPassword() + "', email = '" + user.getEmail() + "', birthday = '" + user.getBirthday() + "' WHERE id = " + user.getId();
jdbcUtils.runQuery(sql);
String sql = "UPDATE User SET username = '" + user.getUsername() + "', password = '" + user.getPassword() + "', email = '" + user.getEmail() + "', birthday = '" + sdf.format(user.getBirthday()) + "' WHERE id = " + user.getId();
jdbcUtils.runUpdate(sql);
}
public User findUserById(int id) {
String sql = "SELECT * FROM users WHERE id = " + id;
String sql = "SELECT * FROM User WHERE id = " + id;
ResultSet rs = jdbcUtils.runQuery(sql);
try {
if (rs.next()) {
@@ -2,7 +2,9 @@
* @name: JDBCUtils.java
* @author: msksbr
* @date: 2025-05-26
* @version: 1.0f: fix yaml file load issue
* @version: 1.1: add a update method
* 1.0f: fix yaml file load issue
* 1.0
* @description: JDBCUtils class for homework 7
*/
package com.msksbr.homework7.util;
@@ -39,6 +41,14 @@ public class JDBCUtils {
}
}
public void runUpdate(String sql) {
try {
this.statement.executeUpdate(sql);
} catch (Exception e) {
e.printStackTrace();
}
}
static class DBInfo {
String address;
String port;
+17
View File
@@ -0,0 +1,17 @@
package dao;
import com.msksbr.homework7.dao.UsersDao;
import com.msksbr.homework7.domain.User;
public class Add {
public static void main(String[] args) {
User user = new User();
user.setId(9999);
user.setUsername("test");
user.setPassword("test");
user.setEmail("test@example.com");
user.setBirthday(new java.util.Date());
UsersDao usersDao = new UsersDao();
usersDao.addUser(user);
}
}
+10
View File
@@ -0,0 +1,10 @@
package dao;
import com.msksbr.homework7.dao.UsersDao;
public class Delete {
public static void main(String[] args) {
UsersDao usersDao = new UsersDao();
usersDao.deleteUser(9999);
}
}
+21
View File
@@ -0,0 +1,21 @@
package dao;
import com.msksbr.homework7.dao.UsersDao;
import com.msksbr.homework7.domain.User;
import java.util.HashMap;
import java.util.Map;
public class Query {
public static void main(String[] args) {
UsersDao usersDao = new UsersDao();
User user = usersDao.findUserById(9999);
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", user.getId());
map.put("username", user.getUsername());
map.put("password", user.getPassword());
map.put("email", user.getEmail());
map.put("birthday", user.getBirthday());
System.out.println(map);
}
}
+17
View File
@@ -0,0 +1,17 @@
package dao;
import com.msksbr.homework7.dao.UsersDao;
import com.msksbr.homework7.domain.User;
public class Update {
public static void main(String[] args) {
UsersDao userDao = new UsersDao();
User user = new User();
user.setId(9999);
user.setUsername("test1");
user.setPassword("test1");
user.setEmail("modified@example.com");
user.setBirthday(new java.util.Date());
userDao.updateUser(user);
}
}