Struts2自定义类型转换器

重要重要:以后一定要导对包,到错了一个包纠结了一天重点内容

一、Struts2中有自带类型转换器也有自定义类型转换器

  1)比如表单提交的信息有 用户名,生日, 年龄, Action中对应的数据类型分别
  是 String, Date, int.没什么好说的, Struts2会自动完成.

  2)Struts2内建了常用的类型转换器,如String ,boolean,char,int,long,float,double,Date, 数组
  (假定元素是String类型),
  集合(假定元素是String类型,用ArrayList封装)

实现自定义类型转换器
  1) 实现TypeCoverter接口,或者继承DefaultTypeConverter实现类
  (该类实现了TypeCoverter接口),通过继承该实现类来实现自己的
  类型转换器。重写convertValue方法即可。

  为了简化类型转换器的实现,Struts2提供了一个StrutsTypeConverter抽
  象类,这个抽象类是DefaultConverter的子类。实现了方法,并提供了2个
  不同转换方向的方法:
  Object convertToString(Map context,String[] values,Class toClass)和String convertFromString(Map context,Object o)
  二、实现自定义转换器
  1)Action类 ConversionAction.java

package com.app.action;

import java.util.Date;

import com.opensymphony.xwork2.ActionSupport;

public class ConversionAction extends ActionSupport{
   

    private static final long serialVersionUID = 1L;

    private int age;
    private Date birthday;

    public ConversionAction() {
        System.out.println("执行。。");
    }
    public Date getBirthday() {
        return birthday;
    }
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }

    public String execute()
    {
        System.out.println("执行了");
        System.out.println("age: "+age);
        System.out.println("birthday: "
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值