国产99福利精品视频|杨幂精品国产福利在线|国精品午夜福利视频不卡|欧美精品黄网站在线播放|精品国产乱码久久久久久久|国产大片中文字幕在线观看|国产肥熟女视频一区二区三区|国产乱码无码视频一区二区三区

Struts2 Date數(shù)據(jù)類型的操作轉(zhuǎn)換器

來(lái)源:北大青鳥飛迅校區(qū)|發(fā)布時(shí)間:2013-04-23 09:00:18

  Struts2-Date數(shù)據(jù)類型的操作之轉(zhuǎn)換器的應(yīng)用:

  一、概述

  在B/S應(yīng)用中,將字符串請(qǐng)求參數(shù)轉(zhuǎn)換為相應(yīng)的數(shù)據(jù)類型,是MVC框架提供的功能,而Struts2是很好的MVC框架實(shí)現(xiàn)者,理所當(dāng)然,提供了類型轉(zhuǎn)換機(jī)制。

  Struts2的類型轉(zhuǎn)換是基于OGNL表達(dá)式的,只要我們把HTML輸入項(xiàng)(表單元素和其他GET/POET的參數(shù))命名為合法的OGNL表達(dá)式,就可以充分利用Struts2的轉(zhuǎn)換機(jī)制。

  除此之外,Struts2提供了很好的擴(kuò)展性,開(kāi)發(fā)者可以非常簡(jiǎn)單的開(kāi)發(fā)自己的類型轉(zhuǎn)換器,完成字符串和自定義復(fù)合類型之間的轉(zhuǎn)換?傊琒truts2 的類型轉(zhuǎn)換器提供了非常強(qiáng)大的表現(xiàn)層數(shù)據(jù)處理機(jī)制,開(kāi)發(fā)者可以利用Struts2的類型轉(zhuǎn)換機(jī)制來(lái)完成任意的類型轉(zhuǎn)換。

  二、實(shí)現(xiàn)自定義類型轉(zhuǎn)換器

  實(shí)現(xiàn)TypeCoverter接口,或者繼承DefaultTypeConverter實(shí)現(xiàn)類(該類實(shí)現(xiàn)了TypeCoverter接口),通過(guò)繼承該實(shí)現(xiàn)類來(lái)實(shí)現(xiàn)自己的類型轉(zhuǎn)換器。重寫convertValue方法即可。

  為了簡(jiǎn)化類型轉(zhuǎn)換器的實(shí)現(xiàn),Struts2提供了一個(gè)StrutsTypeConverter抽象類,這個(gè)抽象類是DefaultConverter的子類。實(shí)現(xiàn)了方法,并提供了2個(gè)不同轉(zhuǎn)換方向的方法:Object

  convertToString(Map context,String[] values,Class toClass)和String convertFromString(Map context,Object o)。

  三、注冊(cè)應(yīng)用

  實(shí)現(xiàn)了自定義類型轉(zhuǎn)換器之后,將該類型轉(zhuǎn)換器注冊(cè)在Web應(yīng)用中,Struts2框架才可以正常使用該類型轉(zhuǎn)換器。

  關(guān)于類型轉(zhuǎn)換器的注冊(cè)方式,主要有3中:

  A、注冊(cè)局部類型轉(zhuǎn)換器:僅僅對(duì)某個(gè)Action的屬性起作用。

  B、注冊(cè)全局類型轉(zhuǎn)換器:對(duì)所有Action的特定類型的屬性都會(huì)生效。

  C、使用JDK1.5的注釋來(lái)注冊(cè)類型轉(zhuǎn)換器:通過(guò)注釋方式來(lái)生成類型轉(zhuǎn)換器。

  1、局部類型轉(zhuǎn)換器

  提供如下格式的文件

  文件名: ActionName-conversion.properties

  內(nèi)容:多個(gè)propertyName(屬性名)=類型轉(zhuǎn)換器類(含包名),如 date=com.aumy.DateConverter

  存放位置:和ActionName類相同路徑。

  2、全局類型轉(zhuǎn)換器

  提供如下格式的文件

  文件名: xwork-conversion.properties

  內(nèi)容: 多個(gè)“復(fù)合類型=對(duì)應(yīng)類型轉(zhuǎn)換器”項(xiàng)組成,如 java.Util.Date=com.aumy.DateConverter

  存放位置:WEB-INF/classes/目錄下。

  四、應(yīng)用示例

  由于Struts2對(duì)日期轉(zhuǎn)換顯示時(shí),會(huì)顯示日期和時(shí)間,現(xiàn)在項(xiàng)目只需要顯示日期,所以采用自定義的類型轉(zhuǎn)換器來(lái)實(shí)現(xiàn)日期顯示。

  1、類型轉(zhuǎn)換類

  package com.globalzt.framework.common;

  import java.text.DateFormat;

  import java.text.ParseException;

  import java.text.SimpleDateFormat;

  import java.util.Date;

上一篇:C++中指針和引用有什么區(qū)別?
下一篇:IIS安全性:關(guān)于自定義用戶的驗(yàn)證權(quán)限

招生熱線: 4008-0731-86 / 0731-82186801

學(xué)校地址: 長(zhǎng)沙市天心區(qū)團(tuán)結(jié)路6號(hào)

Copyright © 2006 | 湖南大計(jì)信息科技有限公司 版權(quán)所有

湘ICP備14017520號(hào)-3

關(guān)注我們
在線咨詢
嘿,我來(lái)幫您!