Fix bug with create user and refactor

This commit is contained in:
Данил
2025-05-26 11:19:27 +07:00
parent 4956813af9
commit 61eecb262c
6 changed files with 22 additions and 9 deletions
+1 -1
View File
@@ -33,6 +33,6 @@ build/
.vscode/ .vscode/
###API_KEYS### ###API_KEYS###
src/main/java/com/Samsung/TaskTraker_Server/Repository/API_KEYS.java src/main/java/com/Samsung/TaskTraker_Server/API_KEYS.java
@@ -1,4 +1,4 @@
package com.Samsung.TaskTraker_Server.Repository; package com.Samsung.TaskTraker_Server.Models;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
@@ -1,4 +1,4 @@
package com.Samsung.TaskTraker_Server.Repository; package com.Samsung.TaskTraker_Server.Models;
import java.util.Objects; import java.util.Objects;
public class User { public class User {
@@ -1,5 +1,9 @@
package com.Samsung.TaskTraker_Server.Repository; package com.Samsung.TaskTraker_Server.Repository;
import com.Samsung.TaskTraker_Server.API_KEYS;
import com.Samsung.TaskTraker_Server.Models.Task;
import com.Samsung.TaskTraker_Server.Models.User;
import java.sql.*; import java.sql.*;
import java.util.*; import java.util.*;
@@ -32,11 +36,18 @@ public class DataBase {
return instance; return instance;
} }
public void SaveUser(User user) throws SQLException { public User SaveUser(String login, String password) throws SQLException {
PreparedStatement saveUser_stmt = connection.prepareStatement("INSERT INTO users(login, password) VALUE (?, ?)"); PreparedStatement saveUser_stmt = connection.prepareStatement("INSERT INTO users(login, password) VALUE (?, ?)");
saveUser_stmt.setString(1, user.getLogin()); saveUser_stmt.setString(1, login);
saveUser_stmt.setString(2, user.getPassword()); saveUser_stmt.setString(2, password);
saveUser_stmt.executeUpdate(); saveUser_stmt.executeUpdate();
PreparedStatement findID = connection.prepareStatement("SELECT id FROM users WHERE login = ?");
findID.setString(1, login);
ResultSet newID = findID.executeQuery();
newID.next();
return new User(newID.getInt(1), login, password);
} }
public void AddTask(Task task, User user) throws SQLException { public void AddTask(Task task, User user) throws SQLException {
@@ -1,5 +1,7 @@
package com.Samsung.TaskTraker_Server.Repository; package com.Samsung.TaskTraker_Server.Repository;
import com.Samsung.TaskTraker_Server.Models.User;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.*; import java.util.*;
@@ -29,9 +31,7 @@ public class UserRepository {
if(find != null) if(find != null)
return null; return null;
User user = new User(0, login, password); User user = DataBase.getInstance().SaveUser(login, password);
DataBase.getInstance().SaveUser(user);
if(UserCache.size() >= MAX_COUNT_USERS_IN_CACHE) if(UserCache.size() >= MAX_COUNT_USERS_IN_CACHE)
UserCache.remove(0); UserCache.remove(0);
UserCache.add(user); UserCache.add(user);
@@ -1,5 +1,7 @@
package com.Samsung.TaskTraker_Server; package com.Samsung.TaskTraker_Server;
import com.Samsung.TaskTraker_Server.Models.Task;
import com.Samsung.TaskTraker_Server.Models.User;
import com.Samsung.TaskTraker_Server.Repository.*; import com.Samsung.TaskTraker_Server.Repository.*;
import org.springframework.boot.ExitCodeGenerator; import org.springframework.boot.ExitCodeGenerator;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;