日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JSF:在正确的阶段进行验证(了解生命周期)

發(fā)布時(shí)間:2023/12/3 javascript 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JSF:在正确的阶段进行验证(了解生命周期) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

嗨,大家好!

盡管標(biāo)題強(qiáng)調(diào)驗(yàn)證一詞,但本文實(shí)際上是關(guān)于JSF生命周期的。 那是因?yàn)槲蚁嘈?#xff0c;真正了解生命周期的最簡(jiǎn)單方法之一就是通過做出我們一直在做的事情:驗(yàn)證用戶輸入。

總的來說,理解所謂的JSF生命周期是使初級(jí)開發(fā)人員與眾不同的地方,初級(jí)開發(fā)人員主要復(fù)制并粘貼他們看到的所有內(nèi)容,而高級(jí)開發(fā)人員則可以在面對(duì)不常見的情況而不會(huì)損害代碼質(zhì)量的同時(shí)“貼上翅膀” 。

通常,當(dāng)我面試某人聲稱自己擁有JSF的經(jīng)驗(yàn)并且似乎不了解其生命周期時(shí),我認(rèn)為這是一個(gè)不好的信號(hào):)

總覽

如果您曾經(jīng)讀過一本關(guān)于JSF的書,那么您可能已經(jīng)看過以下圖片:

此圖顯示了生命周期中的所有階段。 關(guān)于我們對(duì)本文感興趣的內(nèi)容,其中三個(gè)對(duì)我們最有用: 流程驗(yàn)證 , 更新模型值和調(diào)用應(yīng)用程序 。

讓我們假設(shè)一個(gè)假設(shè)的應(yīng)用程序在其中注冊(cè)用戶。 在其中,我們將詢問用戶的姓名和年齡:

為了“處理”上面的表單,我們可能需要兩個(gè)工件:一個(gè)接受請(qǐng)求的Managed Bean和一個(gè)表示正在注冊(cè)的Person的實(shí)體對(duì)象:

證實(shí)

直截了當(dāng)?shù)?#xff0c;讓我們假設(shè)我們有一個(gè)要求,說明“ age”字段不能接收負(fù)值。 完全有道理,因?yàn)闆]有人可以擁有“ -32”歲。 (我們還假設(shè)使用javascript是沒有問題的。在這樣的簡(jiǎn)單驗(yàn)證中,javascript就可以了。但是請(qǐng)?jiān)试S我繼續(xù)使用這個(gè)。):)

然后,我們剩下兩種主要方法來驗(yàn)證“年齡”字段:

  • 在我們的Managed Bean類的“ save()”方法內(nèi)部。 ( 建議使用)
  • 使用JSF驗(yàn)證程序 。 (推薦的)
  • 我堅(jiān)持使用“不推薦”和“推薦”這兩個(gè)詞來強(qiáng)調(diào),在過程驗(yàn)證階段之外驗(yàn)證用戶輸入不是犯罪。 我們經(jīng)常面臨無法實(shí)現(xiàn)“幸福之路”的情況。 犯罪是在做事的時(shí)候根本不知道發(fā)生了什么!

    接下來是解釋。

    不像這樣

    我歸類為“不推薦”的方法是在“ save()”方法所包含的邏輯中驗(yàn)證托管Bean中的“ age”字段。 當(dāng)用戶點(diǎn)擊在“提交”,JSF生命周期踢,并調(diào)用“保存()”的調(diào)用應(yīng)用程序相法右(注意這是在處理驗(yàn)證階段之后 ):

    為了了解為什么這可能是不好的,我們需要了解在每個(gè)JSF生命周期階段中發(fā)生的事情,并且還要記住Invoke Application階段發(fā)生 Process Validation和Update Model Values之后 。 概括地說,這意味著僅在Person對(duì)象已經(jīng)通過JSF生命周期更新了其“ age”屬性 ,才調(diào)用“ save()”方法:

    查看上圖,您可能已經(jīng)注意到,當(dāng)調(diào)用我們的“ save()”方法時(shí),JSF生命周期已經(jīng)在域類Person對(duì)象的“ age”屬性中設(shè)置了不一致的值。 那是個(gè)問題嗎?

    是的,可能是。 由于我們的域類大多數(shù)時(shí)候都是由JPA管理的,因此,像這樣的無效值可能最終會(huì)在沒有我們意識(shí)到的情況下進(jìn)入數(shù)據(jù)庫。 根據(jù)我的個(gè)人經(jīng)驗(yàn),我得出的結(jié)論是,使用“擴(kuò)展持久性上下文”(即跨越多個(gè)請(qǐng)求/響應(yīng)周期的JPA上下文)時(shí),此類錯(cuò)誤更為常見。 如今,這通常是通過使用“對(duì)話上下文”來完成的,例如CDI中或在已故的JBoss Seam中。

    現(xiàn)在我們?cè)谡f

    理想情況下,我們應(yīng)該使用JSF Validator驗(yàn)證輸入。 注意,這并不一定意味著只為驗(yàn)證邏輯創(chuàng)建一個(gè)單獨(dú)的類,而是意味著我們必須在正確的階段 ( 流程驗(yàn)證)觸發(fā)驗(yàn)證 :

  • 我們可以創(chuàng)建一個(gè)帶有@FacesValidator注釋的驗(yàn)證器類。
  • 或在我們的Managed Bean類中創(chuàng)建一個(gè)驗(yàn)證方法 。
  • 就像我說的那樣,無論如何進(jìn)行驗(yàn)證,主要要注意的是在正確的階段進(jìn)行驗(yàn)證。 還有幾種驗(yàn)證輸入的方法,例如Bean Validation 。

    就這樣

    希望你們喜歡。 評(píng)論和問題可以留在下面。 直到下次!

    翻譯自: https://www.javacodegeeks.com/2015/03/jsf-validation-at-the-right-phase-understanding-the-life-cycle.html

    總結(jié)

    以上是生活随笔為你收集整理的JSF:在正确的阶段进行验证(了解生命周期)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国模无码视频一区 | 丝袜ol美脚秘书在线播放 | 色综合久久88色综合天天 | 欧美激情亚洲色图 | 古装做爰无遮挡三级视频 | 老女人丨91丨九色 | 少妇人妻偷人精品视频蜜桃 | 亚洲产国偷v产偷v自拍涩爱 | 欧美夜夜 | 五月天综合久久 | 午夜激情视频在线 | 一本色道久久综合熟妇 | 熟睡侵犯の奶水授乳在线 | 日产精品久久久久久久 | 韩国甜性涩爱 | 欧美日韩国产二区 | melody在线高清免费观看 | 户外少妇对白啪啪野战 | 伊人精品一区二区三区 | 久久99久久99精品免观看软件 | 亚洲欧洲一区 | 亚洲国产区 | 午夜精品小视频 | 五十路在线观看 | 天天操综合| 在线免费观看黄视频 | 综合在线一区 | 91影院在线 | 蜜桃网站 | 91成人在线视频 | 一级欧美日韩 | 熟妇人妻av无码一区二区三区 | 快播日韩 | 欧美性猛交aaaa片黑人 | 少妇又色又紧又大爽又刺激 | 性色av浪潮av | 天堂8av| 红桃一区二区三区 | 久久综合伊人77777麻豆最新章节 | 欧美日韩国内 | 亚洲综合图片网 | 亚洲色精品三区二区一区 | 在线免费一区二区 | 成人免费视频网站在线观看 | 黄色工厂这里只有精品 | 午夜精品久久久久久久久久 | 四虎影视免费永久大全 | 国产日韩精品一区二区三区在线 | 欧美一区二区三区网站 | 深爱激情站 | 日本一区二区免费高清视频 | 古代玷污糟蹋np高辣h文 | 男女视频在线观看 | 亚洲一区二区免费视频 | 欧美在线性爱视频 | 国产精品欧美久久久久天天影视 | 精品视频久久久 | 97自拍视频在线 | 在线观看日韩av | 兄弟兄弟全集免费观看 | 超碰在线97国产 | 美女精品久久 | 国产日本欧美在线观看 | 国产麻豆影视 | 欧美亚韩一区二区三区 | 北京富婆泄欲对白 | 又色又爽又黄gif动态图 | 久久97精品久久久久久久不卡 | 一本不卡 | 男人天堂资源网 | 国产高清在线观看 | 黄色一级片免费在线观看 | 亚洲福利精品 | 亚洲精品国产无码 | 欧洲精品无码一区二区 | 国产精品15p | 日韩av免费在线播放 | 91你懂的 | 欧美xxxxx精品 | 亚洲 欧美 变态 另类 综合 | 亚洲色妞| 亚洲第1页| 日韩高清精品免费观看 | 桃色在线观看 | 青青草原av| av中亚| 欧美性猛交xxxx免费看 | 国产乱淫a∨片免费视频 | 自拍99页 | 日韩狠狠操 | 精品日本一区二区三区在线观看 | wwwwww色 | 亚洲最大黄色网址 | 成年人免费小视频 | 日韩激情一区二区 | 亚洲一区电影网 | 国产伦精品一区二区三区视频痴汉 | 日韩中文av | 男女男精品视频网站 |