最近在做一個Web項目,賬戶登陸驗證是Web項目中必不可少的環節,是以需要階段性的記錄,幫助自己更好的掌握其中的知識。
Jsp登陸涉及到POST方法參數擷取,以及MySQL資料庫資訊的擷取。可能因為自己是新手,剛開始寫的項目有很多不合理的地方,但還是努力去實作結構分離,第一次用Jsp做,是以業務邏輯代碼直接寫在了Jsp代碼中,後期代碼重構的時候肯定還是要做集中功能分離的,也算是現在挖個坑,讓以後的自己填一下,不坑坑自己哪來更好的掌握其中的知識呢?
代碼結構圖:
裡面有個
README
檔案是因為代碼上傳到了 GitHub ,有興趣的同學可以去看看,打算項目邊做邊傳,逐漸完善,是以這個 Readme
檔案也是在逐漸完善中。
其中的
src
目錄是獨立的功能類檔案: -
包下的util
:是封裝好的采用單例模式擷取資料庫連接配接的類檔案DBHelp
-
entity
:是對應賬戶實體類,裡面的屬性對應資料庫表中的字段User
-
entity
:是通過給定UserCheck
獲得username
實體對象,裡面包含了實體的資料User
然後就是放代碼了,第一個是
User.java
實體類:
實體類比較簡單,就是和表字段對應的屬性,還有一個無參構造方法,和屬性分别對應的
get
、
set
方法。
擷取實體對象的類:
工具類:
登陸jsp:
login.jsp
,就放上中間的form表單代碼:
<form class="form-horizontal" action="dologin.jsp" method="POST" >
<div class="form-group">
<label for="username" class="col-sm-3 control-label">使用者名</label>
<div class="col-sm-8">
<input type="text" name="username" class="form-control" id="username" placeholder="使用者名">
</div>
</div>
<div class="form-group">
<label for="password" class="col-sm-3 control-label">密碼</label>
<div class="col-sm-8">
<input type="password" name="password" class="form-control" id="Password" placeholder="密碼">
</div>
</div>
<div class="text text-center">
<button type="submit" class="btn btn-primary">登陸</button>
<button type="reset" class="btn btn-default">重置</button>
</div>
</div>
</form>
其他的也沒有啥用。
然後就是對送出資料進行驗證的
dologin.jsp
了。
驗證完畢直接顯示對應結果,重要的是其中的過程嘛!
最終效果如下,前端頁面采用了Bootstrap做的,前端的知識就不講解了。
賬戶、密碼都為空的情況:
密碼為空的情況:
賬戶密碼錯誤的情況:
賬戶密碼正确的情況: