我正在做一個酒店管理系統專案,我想制作一個登錄平臺,該平臺從我創建的 AWS RDS PostgreSQL 服務器獲取資料。問題是我發送這個專案的 .exe 檔案的其他網路的人無法登錄,但我可以。
我已經在 pgAdmin4 中創建了我想要的表,并且我已經在我的專案庫中安裝了 Postgres 驅動程式。
這是我的連接類,其中 URL、用戶和密碼在專案中定義:
public class ServerConnection {
static Connection getConnection() {
Connection connection = null;
try{
connection = DriverManager.getConnection(url, user, pass);
if(connection != null) {
System.out.println("Connected");
}
else {
System.out.println("Failed");
}
} catch (SQLException e) {
e.printStackTrace();
}
return connection;
}
}
以下是登錄方法:
public void performLogin() {
PreparedStatement st;
ResultSet rs;
String user = username.getText();
String pass = String.valueOf(password.getPassword());
String query = "SELECT * FROM ADMINS WHERE username=? AND passw=?";
try {
st = serverConnection.getConnection().prepareStatement(query);
st.setString(1, user);
st.setString(2, pass);
rs = st.executeQuery();
if(rs.next()) {
hotelFrame2 hf2 = new hotelFrame2();
this.dispose();
}
else {
JOptionPane.showMessageDialog(null, "Invalid Username / Password","LoginError",2);
}
} catch (SQLException e1) {
e1.printStackTrace();
}
}
我該如何解決?
uj5u.com熱心網友回復:
問題是我發送這個專案的 .exe 檔案的其他網路的人無法登錄,但我可以。
似乎您只授權您的計算機(IP)連接到 RDS 資料庫,要解決您的問題,您必須通過更改安全組向其他人打開流。
順便說一句,使用 JDBC 和 AWS 真的很傷我,這真的是一種老方法,最好看看 JPA、Hibernate 甚至其他一些 AWS 服務。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/531589.html
標籤:爪哇PostgreSQL亚马逊网络服务数据库亚马逊-rds
