zoukankan      html  css  js  c++  java
  • struts2参数转换器用法

    贴代码

    struts的action中接收简单类型参数,struts2可以自动转化,但是复杂类型需要自定义转换器转换

    public class ConvertAction extends ActionSupport{
    
        private int age;
        private Date date;
        private List<String> interests;
        private String name;
        private Map<String, String> map;
        
        //复杂类型
        private List<Point> ps;
        public List<Point> getPs() {
            return ps;
        }
        public void setPs(List<Point> ps) {
            this.ps = ps;
        }
        //特殊类型
        private Point p;
    
        public Point getP() {
            return p;
        }
        public void setP(Point p) {
            this.p = p;
        }
    
        public Map<String, String> getMap() {
            return map;
        }
        public void setMap(Map<String, String> map) {
            this.map = map;
        }
        public int getAge() {
            return age;
        }
        public Date getDate() {
            return date;
        }
        public List<String> getInterests() {
            return interests;
        }
        public String getName() {
            return name;
        }
        public String hello(){
    
            System.out.println("date:"+date);
            return SUCCESS;
        }
        public void setAge(int age) {
            this.age = age;
        }
        public void setDate(Date date) {
            this.date = date;
        }
        public void setInterests(List<String> interests) {
            this.interests = interests;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    }
    public class PointConvert extends DefaultTypeConverter{
        
        @Override
        public Object convertValue(Object value, Class toType) {
            // TODO Auto-generated method stub
            if (toType == Point.class) {
                Point p=new Point();
                String[] values=(String[]) value;
                String[] pv = values[0].split(",");
                p.x=Integer.parseInt(pv[0]);
                p.y=Integer.parseInt(pv[1]);
                return p;
            }
            if (toType == String.class) {
                return value.toString();
            }
            return super.convertValue(value, toType);
        }
    
    }

    注册转换器:两种方式

    1.局部:与action同包  XXXAction-conversion.properties

    2.全局:src根目录  xwork-conversion.properties

    目录结构

    具体代码在文件那,下载看。

  • 相关阅读:
    下四国的排长和下四国的小兵 (转载)
    RSS Bandit 不能显示中文界面的解决方法
    Google桌面搜索(GDS)插件的开发工具
    编写VxWorks的Hello World程序
    Visual Studio 2005 Express October 2004 CTP完整版本的下载
    压缩.NET可执行文件的工具
    支持x64的开发工具
    Visual Studio.NET 2002的Service Pack 1发布了
    Windows 嵌入式开发的一些Blog
    利用BITSADMIN获得下载地址
  • 原文地址:https://www.cnblogs.com/Danial7777777/p/9153659.html
Copyright © 2011-2022 走看看