Files
WS-10-Database/src/main/java/dev/dao/UserDao.java
T
2026-06-22 20:27:29 +03:30

51 lines
1.5 KiB
Java

package dev.dao;
import dev.database.DatabaseConnection;
import dev.model.User;
import java.sql.*;
public class UserDao {
public boolean save(User user) {
String sql = "INSERT INTO users (username, password, email) VALUES (?, ?, ?)";
try(Connection conn = DatabaseConnection.getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql)){
pstmt.setString(1, user.getUsername());
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getEmail());
int affectedRows = pstmt.executeUpdate();
return affectedRows > 0;
}catch (SQLException e) {
System.err.println("Error saving user: " + e.getMessage());
return false;
}
}
public User findByUsername(String username) {
String sql = "SELECT * FROM users WHERE username = ?";
try(Connection conn = DatabaseConnection.getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql)){
pstmt.setString(1, username);
ResultSet rs = pstmt.executeQuery();
if (rs.next()){
return new User(
rs.getInt("id"),
rs.getString("username"),
rs.getString("password"),
rs.getString("email")
);
}
} catch (SQLException e) {
System.err.println("Error finding user: " + e.getMessage());
}
return null;
}
}