archieve: homework7 UserDao

This commit is contained in:
2025-05-26 16:17:32 +08:00
parent f65b48b374
commit fb4ff04aac
7 changed files with 100 additions and 72 deletions
+18
View File
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
<data-source source="LOCAL" name="@msksbr.com" uuid="061f36fe-96cf-4556-9bb1-8f54bb7e626a">
<driver-ref>mysql.8</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>com.mysql.cj.jdbc.Driver</jdbc-driver>
<jdbc-url>jdbc:mysql://msksbr.com:3306</jdbc-url>
<jdbc-additional-properties>
<property name="com.intellij.clouds.kubernetes.db.host.port" />
<property name="com.intellij.clouds.kubernetes.db.enabled" value="false" />
<property name="com.intellij.clouds.kubernetes.db.resource.type" value="Deployment" />
<property name="com.intellij.clouds.kubernetes.db.container.port" />
</jdbc-additional-properties>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component>
</project>
+7
View File
@@ -0,0 +1,7 @@
<component name="ProjectDictionaryState">
<dictionary name="project">
<words>
<w>msksbr</w>
</words>
</dictionary>
</component>
+7
View File
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SqlDialectMappings">
<file url="file://$PROJECT_DIR$/sql/User.sql" dialect="MySQL" />
<file url="PROJECT" dialect="MySQL" />
</component>
</project>
+14
View File
@@ -0,0 +1,14 @@
USE `msksbr.homework7`;
CREATE TABLE User
(
id INT PRIMARY KEY,
username VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL,
email VARCHAR(255),
birthday DATE
);
INSERT INTO User (id, username, password, email, birthday)
VALUES (1000, "msksbr", "password", "gugugulaocuchen@gmail.com", "2005-05-05"),
(1001, "xor3301", "password", "zzmark437@gmail.com", "2005-01-01"),
(1002, "anzai", "password", "b.an@sleepbed.top", "2003-01-01");
@@ -0,0 +1,53 @@
/*
* @name: UsersDao.java
* @author: msksbr
* @date: 2025-05-26
* @version: 1.0
* @description: UsersDao class for homework 7
*/
package com.msksbr.homework7.dao;
import com.msksbr.homework7.domain.User;
import com.msksbr.homework7.util.JDBCUtils;
import java.sql.ResultSet;
public class UsersDao {
private final JDBCUtils jdbcUtils = new JDBCUtils();
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);
}
public void deleteUser(int id) {
String sql = "DELETE FROM users WHERE id = " + id;
jdbcUtils.runQuery(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);
}
public User findUserById(int id) {
String sql = "SELECT * FROM users WHERE id = " + id;
ResultSet rs = jdbcUtils.runQuery(sql);
try {
if (rs.next()) {
user.setId(rs.getInt("id"));
user.setUsername(rs.getString("username"));
user.setPassword(rs.getString("password"));
user.setEmail(rs.getString("email"));
user.setBirthday(rs.getDate("birthday"));
}
return user;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
@@ -2,7 +2,7 @@
* @name: JDBCUtils.java
* @author: msksbr
* @date: 2025-05-26
* @version: 1.0
* @version: 1.0f: fix yaml file load issue
* @description: JDBCUtils class for homework 7
*/
package com.msksbr.homework7.util;
-71
View File
@@ -1,71 +0,0 @@
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(40),
PASSWORD VARCHAR(40),
email VARCHAR(60),
birthday DATE
) CHARACTER SET utf8 COLLATE utf8_general_ci;
INSERT INTO
users (
NAME,
PASSWORD,
email,
birthday
)
VALUES (
'zs',
'123456',
'zs@sina.com',
'1980-12-04'
);
INSERT INTO
users (
NAME,
PASSWORD,
email,
birthday
)
VALUES (
'lisi',
'123456',
'lisi@sina.com',
'1981-12-04'
);
INSERT INTO
users (
NAME,
PASSWORD,
email,
birthday
)
VALUES (
'wangwu',
'123456',
'wangwu@sina.com',
'1979-12-04'
);
CREATE TABLE tb_user (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, -- id主键
username VARCHAR(40) NOT NULL, -- 账户名称,设置不为空
PASSWORD VARCHAR(40) NOT NULL, -- 密码,设置不为空
NAME VARCHAR(40) DEFAULT NULL, -- 用户真实姓名,默认为空
gender VARCHAR(20) DEFAULT NULL, -- 用户性别,默认为空
phonenumber VARCHAR(30) DEFAULT NULL, -- 用户手机号码,默认为空
identitycode VARCHAR(30) DEFAULT NULL -- 用户身份证号码,默认为空
);
INSERT INTO
tb_user
VALUES (
1,
'张三',
'123',
'张三',
'male',
'13888888888',
'110202107075023'
);