Files
WS-10-Database/src/main/java/dev/dao/UserDao.java
T

73 lines
1.8 KiB
Java

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