国产美女一级毛片精品久久久|婷婷影院在线综合免费视频|最新国产午夜精品视频成人|久久精品九九无码免费

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ò)展性,開發(fā)者可以非常簡(jiǎn)單的開發(fā)自己的類型轉(zhuǎn)換器,完成字符串和自定義復(fù)合類型之間的轉(zhuǎn)換。總之,Struts2 的類型轉(zhuǎn)換器提供了非常強(qiáng)大的表現(xiàn)層數(shù)據(jù)處理機(jī)制,開發(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)幫您!
彝良县| 长寿区| 林口县| 十堰市| 玉山县| 西充县| 赤城县| 商洛市| 永川市| 石门县| 木兰县| 彭水| 宾阳县| 泸溪县| 沽源县| 枝江市| 手游| 宁阳县| 旌德县| 肇庆市| 和政县| 句容市| 小金县| 虎林市| 修武县| 连城县| 阳信县| 永和县| 天台县| 通道| 河池市| 木兰县| 金湖县| 海南省| 马公市| 新乡市| 长葛市| 交城县| 平远县| 喀喇沁旗| 阳东县|