SSH:登錄實例

1 MYSQL準(zhǔn)備

? ? ? ? 事先準(zhǔn)備好數(shù)據(jù)庫的內(nèi)容,并錄入一條數(shù)據(jù)。

? ? ? ? 由于hibernate可以自動生成表單,所以可以只建立數(shù)據(jù)庫,等之后再來錄入數(shù)據(jù)

2?SSH框架準(zhǔn)備

? ? ? ? 四層包結(jié)構(gòu),三個配置文件。尤其注意各個框架包的版本號,特別是hibernate與spring的版本對應(yīng),網(wǎng)上很多例子使用的版本過舊,多數(shù)方法和新版本已經(jīng)不匹配。

? ? ? ? 因為在之前的文章已經(jīng)進(jìn)行SSH的整合了,例如:entity類的生成,action、service、daoc層之間的調(diào)用過程以及配置,所以本文只提及不同的部分。

3 功能實現(xiàn)

action層 ? ?

? ? ? ? 登錄的實現(xiàn),是將表單提交的用戶和密碼與數(shù)據(jù)庫相應(yīng)用戶存儲的信息作比較,如果存在這一條目,則登錄成功。所以,我們在action里擬寫一個login方法,而這個方法需要去調(diào)用service層的login方法來得到數(shù)據(jù)庫里是否有這條目,數(shù)據(jù)為NULL則失敗,否則成功。

service層

????????service層獲取login的指令之后,就要去命令數(shù)據(jù)庫查詢是否有對應(yīng)的用戶與密碼,就要執(zhí)行DAO層的尋找用戶與密碼的方法。 ? ? ?

DAO層

? ? ? ? DAO層就要執(zhí)行SQL語句,去查詢數(shù)據(jù)庫,并返回結(jié)果。這里注意,Spring3.1以上已經(jīng)取消了HibernateDaoSupport這個類,因為Hibernate4以上的版本已經(jīng)優(yōu)化很好了。所以某一些方法就不適用了,但我們?nèi)匀豢梢允褂肏ibernate模板去管理session,但是需要配置。

? ? ? ? 首先,在Spring的配置文件中配置hibernateTemplate。

? ? ? ??并在配置hibernate屬性的條例中添加一條

? ? ? ? 最后,在DAO層使用hibernateTemplate.find方法查詢數(shù)據(jù)庫,返回結(jié)果集給List,在從List中進(jìn)行IF判斷既可。這樣就將結(jié)果返回給service層,service層也依舊把結(jié)果返回給Action層。

4 結(jié)果

? ? ? ? 界面登錄

? ? ? ?成功返回歡迎界面

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容