From f0a55b553183acf00e683dd61e554864a69275bb Mon Sep 17 00:00:00 2001 From: Dibya Ranjan Pradhan <168287577+Dibya0912@users.noreply.github.com> Date: Mon, 20 Oct 2025 19:59:44 +0530 Subject: [PATCH] Implement user registration and login methods Added methods for user registration and login functionality. --- src/main/java/dao/UserDAO.java | 46 ++++++++++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/src/main/java/dao/UserDAO.java b/src/main/java/dao/UserDAO.java index 8cf602c..0a83132 100644 --- a/src/main/java/dao/UserDAO.java +++ b/src/main/java/dao/UserDAO.java @@ -1,10 +1,52 @@ package dao; - +import model.User; +import java.sql.*; public class UserDAO { - + public boolean registerUser(User user) { + String sql = "INSERT INTO users (name, email, password, role) VALUES (?, ?, ?, ?)"; + try (Connection conn = DBConnection.getConnection(); + PreparedStatement stmt = conn.prepareStatement(sql)) { + + stmt.setString(1, user.getName()); + stmt.setString(2, user.getEmail()); + stmt.setString(3, user.getPassword()); + stmt.setString(4, user.getRole()); + int rows = stmt.executeUpdate(); + return rows > 0; + + } catch (SQLException e) { + e.printStackTrace(); + } + return false; + } + + public User loginUser(String email, String password) { + String sql = "SELECT * FROM users WHERE email = ? AND password = ?"; + try (Connection conn = DBConnection.getConnection(); + PreparedStatement stmt = conn.prepareStatement(sql)) { + + stmt.setString(1, email); + stmt.setString(2, password); + ResultSet rs = stmt.executeQuery(); + + if (rs.next()) { + User user = new User(); + user.setId(rs.getInt("id")); + user.setName(rs.getString("name")); + user.setEmail(rs.getString("email")); + user.setPassword(rs.getString("password")); + user.setRole(rs.getString("role")); + return user; + } + + } catch (SQLException e) { + e.printStackTrace(); + } + return null; + } // New method to reset password