Login and Register with UI
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
package org.to.telegramfinalproject.Database;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.SQLException;
|
||||
|
||||
public class ConnectionDb {
|
||||
private static final String JDBC_URL = "jdbc:postgresql://localhost:5432/Telegramdb";
|
||||
private static final String USERNAME = "postgres";
|
||||
private static final String PASSWORD = "Partow@1384";
|
||||
|
||||
public ConnectionDb() {
|
||||
}
|
||||
|
||||
public static Connection connect() throws SQLException {
|
||||
return DriverManager.getConnection(JDBC_URL, USERNAME, PASSWORD);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,207 @@
|
||||
package org.to.telegramfinalproject.Database;
|
||||
|
||||
|
||||
import org.to.telegramfinalproject.Models.User;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class userDatabase {
|
||||
public userDatabase() {
|
||||
}
|
||||
|
||||
private Connection getConnection() throws SQLException {
|
||||
return ConnectionDb.connect();
|
||||
}
|
||||
|
||||
public User findByUserId(String userId) {
|
||||
String query = "SELECT * FROM users WHERE user_id = ?";
|
||||
|
||||
try {
|
||||
User var6;
|
||||
try (Connection conn = this.getConnection()) {
|
||||
try (PreparedStatement stmt = conn.prepareStatement(query)) {
|
||||
stmt.setString(1, userId);
|
||||
ResultSet rs = stmt.executeQuery();
|
||||
if (!rs.next()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
var6 = this.extractUser(rs);
|
||||
}
|
||||
}
|
||||
|
||||
return var6;
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public User findByUsername(String username) {
|
||||
String query = "SELECT * FROM users WHERE username = ?";
|
||||
|
||||
try {
|
||||
User var6;
|
||||
try (Connection conn = this.getConnection()) {
|
||||
try (PreparedStatement stmt = conn.prepareStatement(query)) {
|
||||
stmt.setString(1, username);
|
||||
ResultSet rs = stmt.executeQuery();
|
||||
if (!rs.next()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
var6 = this.extractUser(rs);
|
||||
}
|
||||
}
|
||||
|
||||
return var6;
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean existsByUsername(String username) {
|
||||
String query = "SELECT 1 FROM users WHERE username = ?";
|
||||
|
||||
try {
|
||||
boolean var6;
|
||||
try (
|
||||
Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(query);
|
||||
) {
|
||||
stmt.setString(1, username);
|
||||
ResultSet rs = stmt.executeQuery();
|
||||
var6 = rs.next();
|
||||
}
|
||||
|
||||
return var6;
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean existsByUserId(String user_id) {
|
||||
String query = "SELECT 1 FROM users WHERE user_id = ?";
|
||||
|
||||
try {
|
||||
boolean var6;
|
||||
try (
|
||||
Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(query);
|
||||
) {
|
||||
stmt.setString(1, user_id);
|
||||
ResultSet rs = stmt.executeQuery();
|
||||
var6 = rs.next();
|
||||
}
|
||||
|
||||
return var6;
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean save(User user) {
|
||||
String query = "INSERT INTO users (user_id, internal_uuid, username, password, profile_name) VALUES (?, ?, ?, ?, ?)";
|
||||
|
||||
try {
|
||||
boolean var5;
|
||||
try (
|
||||
Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(query);
|
||||
) {
|
||||
stmt.setString(1, user.getUser_id());
|
||||
stmt.setObject(2, user.getInternal_uuid());
|
||||
stmt.setString(3, user.getUsername());
|
||||
stmt.setString(4, user.getPassword());
|
||||
stmt.setString(5, user.getProfile_name());
|
||||
var5 = stmt.executeUpdate() > 0;
|
||||
}
|
||||
|
||||
return var5;
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean updateByUUID(UUID uuid, User user) {
|
||||
String query = "UPDATE users SET user_id=?, username=?, password=?, profile_name=?, bio=?, image_url=?, status=?, last_seen=? WHERE internal_uuid=?";
|
||||
|
||||
try {
|
||||
boolean var6;
|
||||
try (
|
||||
Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(query);
|
||||
) {
|
||||
stmt.setString(1, user.getUser_id());
|
||||
stmt.setString(2, user.getUsername());
|
||||
stmt.setString(3, user.getPassword());
|
||||
stmt.setString(4, user.getProfile_name());
|
||||
stmt.setString(5, user.getBio());
|
||||
stmt.setString(6, user.getImage_url());
|
||||
stmt.setString(7, user.getStatus());
|
||||
stmt.setObject(8, user.getLast_seen());
|
||||
stmt.setObject(9, uuid);
|
||||
var6 = stmt.executeUpdate() > 0;
|
||||
}
|
||||
|
||||
return var6;
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public List<User> getAll() {
|
||||
List<User> users = new ArrayList();
|
||||
String query = "SELECT * FROM users";
|
||||
|
||||
try (
|
||||
Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(query);
|
||||
ResultSet rs = stmt.executeQuery();
|
||||
) {
|
||||
while(rs.next()) {
|
||||
users.add(this.extractUser(rs));
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return users;
|
||||
}
|
||||
|
||||
private User extractUser(ResultSet rs) throws SQLException {
|
||||
return new User(rs.getString("user_id"), UUID.fromString(rs.getString("internal_uuid")), rs.getString("username"), rs.getString("password"), rs.getString("profile_name"));
|
||||
}
|
||||
|
||||
public boolean deleteByUUID(UUID uuid) {
|
||||
String query = "DELETE FROM users WHERE internal_uuid = ?";
|
||||
|
||||
try {
|
||||
boolean var5;
|
||||
try (
|
||||
Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(query);
|
||||
) {
|
||||
stmt.setObject(1, uuid);
|
||||
var5 = stmt.executeUpdate() > 0;
|
||||
}
|
||||
|
||||
return var5;
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user