ユーザー登録に使用する以下のコードに関する3つの質問があります。Java JDBC - ユーザー登録&ログイン
1)ユーザー名とパスワードの領域に空の値を指定してユーザーを登録できないようにするにはどうすればよいですか?
2)&は、ユーザー資格情報がデータベースに既に存在する場合には、フォームを再度実行することをお勧めします。メイン画面に戻る別の方法はありますか?
3)私のプログラムは正しく動作しますが、 "JPasswordFieldタイプのメソッドgetText()は推奨されていません"のような行に警告メッセージがあります。それはどういう意味ですか?
コード:
public void actionPerformed(ActionEvent arg0) {
try
{
String userID = userIDinput.getText();
String pass = passwordField.getText();
String myDriver = "com.mysql.jdbc.Driver"; //jdbc driver loaded
String myUrl = "jdbc:mysql://localhost:3306/masterdata_db?autoReconnect=true&useSSL=false";
Class.forName(myDriver);
Connection conn = DriverManager.getConnection(myUrl, "root", "");
Statement st = conn.createStatement();
ResultSet resultSet;
String check = "SELECT Username FROM userregistration WHERE Username = '"+userID+"' ";
resultSet = st.executeQuery(check);
if(!resultSet.next()){
String sql = "INSERT INTO userregistration"
+ "(Username, Password) VALUES"
+ "(?,?)";
PreparedStatement pSt=conn.prepareStatement(sql);
pSt.setString(1, userID);
pSt.setString(2, pass);
pSt.executeUpdate();
conn.close();
}
else {
JOptionPane.showMessageDialog(frame, "USER ALREADY EXISTS. TRY ANOTHER ONE!", "Inane error",JOptionPane.ERROR_MESSAGE);
dispose();
new Login().setVisible(true);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
廃止予定のメソッドは、新しいコードを書くと廃止されたメソッドを完全に回避する場合には、もはや使用しないでください。代わりにgetText()の代わりにgetPassword()メソッドを使用してください。 –
Plsは投稿ごとに1つ以上の質問をしません。回答と検索がさらに困難になります! – Shadow