実現したいこと
社員のidとパスワードを入力し, 合致したらその人の社員番号などを表示。
合致しなければ、IDもしくはパスワードが違いますと表示。
前提
eclipseを使用
データベースはpdAdmin4を使用
カラムは
id
password
name
comment
login_time
発生している問題・エラーメッセージ
データベースに入っている人のid・パスワードで入力しても反応なし。
該当のソースコード
/**
- ・社員情報データ(モデル)
*/
public class EmployeeBean {
private String Id; private String PassWord; private String Name; private String Comment; private String Login_Time; public void setId(String Id) { this.Id = Id; } public String Id() { return Id; } public void setPassWord(String PassWord) { this.PassWord = PassWord; } public String getPassWord() { return PassWord; } public void setName(String Name) { this.Name = Name; } public String getName() { return Name; } public void setLogin_Time(String Login_Time) { this.Login_Time = Login_Time; } public String getLogin_Time() { return Login_Time; } public void setComment(String Comment) { this.Comment = Comment; } public String getComment() { return Comment; }
}
試したこと
IDとPWが違います。と表示されてしまいます。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
そもそも
ルーティングとして/SC3-A/search
はどのコントローラで受け取られるようになっているのでしょうか。
提示情報のみでは読み取れませんでした。
m.ts10806様
ご回答ありがとうございます。
IT初心者で申し訳ないのですが、コントローラとはどういうものなのでしょうか。
調べてみたところ「ビューとモデルの橋渡し役」とありましたが、どの部分を指すのかいまいちわかりません。
m.ts10806様
web.xmlを追加しました。
EmployeeServiceのSQL_SELECTに設定されているSQLを次の通りに修正しても問題は再現しますか?
SELECT * FROM employee_table WHERE id = ? AND password = ?
neko_the_shadow様
ご回答ありがとうございます。
上記のように変更したところ直りました!ありがとうございます!
なぜ''をつけてしまうと不具合がでてしまうのかおわかりですか?
>なぜ''をつけてしまうと不具合がでてしまうのかおわかりですか?
PreparedStatementは?を置き換える際、前後に'を付けるためです。
なお今回は自己解決としてQAをクローズされたほうがよいと思います。
https://teratail.com/help#resolve-myself
回答1件
あなたの回答
tips
プレビュー