亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        裝飾器模式在Web方面的應(yīng)用解析

        2016-05-14 13:09:56魏靜敏
        科技創(chuàng)新與應(yīng)用 2016年6期
        關(guān)鍵詞:方法設(shè)計(jì)

        魏靜敏

        摘 要:文章首先提出了一個(gè)Web項(xiàng)目在國(guó)際化時(shí)需要修改HttpServletRequest的問(wèn)題,針對(duì)該問(wèn)題進(jìn)行了調(diào)查,并通過(guò)對(duì)HttpServletRequestWrapper的擴(kuò)展解決了該問(wèn)題。然后針對(duì)它的應(yīng)用進(jìn)行了引申,最后總結(jié)了Decorator設(shè)計(jì)模式的應(yīng)用場(chǎng)景及優(yōu)缺點(diǎn)??梢越o初級(jí)階段Web開發(fā)人員提供了一個(gè)典型Web問(wèn)題的解決方法,同時(shí)也給設(shè)計(jì)人員提供了一個(gè)裝飾器模式的設(shè)計(jì)思路。

        關(guān)鍵詞:Decorator(裝飾器)模式;國(guó)際化;HttpServletRequestWrapper

        1 問(wèn)題描述

        在項(xiàng)目的開發(fā)中,經(jīng)常會(huì)遇到國(guó)際化問(wèn)題。例如,系統(tǒng)開發(fā)中使用的是一個(gè)客戶指定的框架,它提供了消息的讀取,畫面項(xiàng)目的輸入驗(yàn)證等功能,但是在提示消息時(shí)框架中是固定地從HttpServletRequest中通過(guò)getLocale取得語(yǔ)言信息。而系統(tǒng)中的其他地方都是將畫面的下拉列表中設(shè)定的語(yǔ)言信息保存到session中,然后從session中取得。現(xiàn)在的問(wèn)題是如何修改httpServletRequest中的getLocale方法取得的Local信息,使框架取得的Local和其他地方一致。

        2 調(diào)查過(guò)程

        通過(guò)調(diào)查發(fā)現(xiàn),Servlet API 中提供了一個(gè)HttpServletRequest對(duì)象的 Decorator 設(shè)計(jì)模式的默認(rèn)實(shí)現(xiàn)類HttpServletRequestWrapper ,它實(shí)現(xiàn)了request接口中的所有方法,但這些方法的內(nèi)部實(shí)現(xiàn)都是僅僅調(diào)用了一下所包裝的request對(duì)象的對(duì)應(yīng)方法,以避免用戶在對(duì)HttpServletRequest對(duì)象進(jìn)行增強(qiáng)時(shí)需要實(shí)現(xiàn)request接口中的所有方法。于是決定采用Decorator 設(shè)計(jì)模式對(duì)HttpServletRequest這些對(duì)象進(jìn)行增強(qiáng),即重寫HttpServletRequestWrapper的getLocale方法。具體解決方法如下。

        3 引申

        通過(guò)上面Local問(wèn)題的解決,我們很容易發(fā)現(xiàn)許多的Web問(wèn)題都可以通過(guò)擴(kuò)展HttpServletRequestWrapper來(lái)解決。例如,使用 Decorator 模式包裝request對(duì)象,可以實(shí)現(xiàn)敏感字符過(guò)濾功能、解決中文亂碼問(wèn)題。只需要重寫 getParameter 方法即可。還可以對(duì)URL進(jìn)行過(guò)濾處理等。另外,還有一個(gè)和HttpServletRequestWrapper成對(duì)的類HttpServletResponseWrapper,通過(guò)重寫其中的方法可以實(shí)現(xiàn)對(duì)HttpServletResponse對(duì)象的增強(qiáng)。具體應(yīng)用在這里就不再贅述。下面主要總結(jié)一下裝飾器模式的應(yīng)用場(chǎng)景和優(yōu)缺點(diǎn)。使大家在解決問(wèn)題或者設(shè)計(jì)時(shí)能夠靈活運(yùn)用。

        3.1 裝飾器模式應(yīng)用場(chǎng)景

        適合于默認(rèn)目標(biāo)實(shí)現(xiàn)中的多個(gè)接口進(jìn)行排列組合調(diào)度、默認(rèn)目標(biāo)實(shí)現(xiàn)進(jìn)行選擇性擴(kuò)展、默認(rèn)目標(biāo)實(shí)現(xiàn)未知或者不易擴(kuò)展的情況。

        3.2 裝飾器模式優(yōu)點(diǎn)

        能夠?qū)崿F(xiàn)動(dòng)態(tài)擴(kuò)展對(duì)象功能的能力、有效避免了靈活性差、子類無(wú)限制擴(kuò)張的問(wèn)題、充分利用了繼承和組合的長(zhǎng)處和短處。裝飾者和被裝飾者之間是完全獨(dú)立并可以各自獨(dú)立任意改變的。遵守大部分GRASP原則和常用設(shè)計(jì)原則,高內(nèi)聚、低偶合。

        3.3 裝飾器模式缺點(diǎn)

        性能方面:過(guò)多的多態(tài)和調(diào)用,可能對(duì)性能有一定的影響。

        程序復(fù)雜度方面:如果過(guò)度使用裝飾器會(huì)導(dǎo)致設(shè)計(jì)中出現(xiàn)許多小對(duì)象,會(huì)使程序變的較復(fù)雜。

        4 結(jié)束語(yǔ)

        文章通過(guò)具體實(shí)例解決了對(duì)HttpServletRequest對(duì)象的擴(kuò)展問(wèn)題, 介紹了兩個(gè)對(duì)于解決Web問(wèn)題非常有用的類:HttpServletRequestWrapper,HttpServletResponseWrapper,并對(duì)其應(yīng)用進(jìn)行了引申,總結(jié)了裝飾器模式應(yīng)用場(chǎng)景及優(yōu)缺點(diǎn),為大家提供一個(gè)解決問(wèn)題的方法和思路。

        參考文獻(xiàn)

        [1]Erich Gamma,Richard Helm,Ralph Johnson,等.設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)[M].機(jī)械工業(yè)出版社,2007.

        [2]周兵.Java Web開發(fā)中的中文亂碼問(wèn)題分析及解決方案[J].電腦知識(shí)與技術(shù),2014(29).

        猜你喜歡
        方法設(shè)計(jì)
        何為設(shè)計(jì)的守護(hù)之道?
        《豐收的喜悅展示設(shè)計(jì)》
        流行色(2020年1期)2020-04-28 11:16:38
        學(xué)習(xí)方法
        瞞天過(guò)?!律O(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        可能是方法不對(duì)
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        四大方法 教你不再“坐以待病”!
        Coco薇(2015年1期)2015-08-13 02:47:34
        賺錢方法
        国产玉足榨精视频在线观看| 久久久国产精品ⅤA麻豆百度| 亚洲成人色黄网站久久| av男人的天堂亚洲综合网| 亚洲一区二区三区四区五区六| 99亚洲精品久久久99| 久久aⅴ无码av高潮AV喷| 亚洲日本高清一区二区| 免费无码又爽又刺激网站直播| 嗯啊哦快使劲呻吟高潮视频| 日本一区二区三区中文字幕最新| 亚洲av成人波多野一区二区| 亚洲线精品一区二区三区| 成人性做爰aaa片免费看| 亚洲人成人99网站| 在线观看国产自拍视频| 午夜精品久久久久久久99老熟妇| 免费无码午夜福利片69| 亚洲乱码少妇中文字幕| 久久成人精品国产免费网站| 97一期涩涩97片久久久久久久| 精品无码一区二区三区亚洲桃色| 亚洲综合色婷婷久久| 中文字幕色资源在线视频| 久久无码人妻一区二区三区午夜| 亚洲精品无码高潮喷水在线 | 天堂无码人妻精品av一区| √最新版天堂资源在线| 精品日本免费观看一区二区三区| 无码熟妇人妻av在线网站| 夜夜欢性恔免费视频| 国产乱子伦视频一区二区三区| 国产老熟女伦老熟妇露脸| 亚洲愉拍99热成人精品热久久| 免费人成黄页在线观看视频国产| 国产在线拍91揄自揄视精品91| 成人自慰女黄网站免费大全| 51久久国产露脸精品国产| 国产精品原创永久在线观看| 日本高清视频在线观看一区二区| 国产ww久久久久久久久久|