zoukankan      html  css  js  c++  java
  • struts 类型转换器

    类型转换

    (来自尚学堂)

    a)      默认转换

    i.       日期处理

    b)      写自己的转换器:

    public class MyPointConverter extends DefaultTypeConverter{

             @Override

             public Object convertValue(Object value, Class toType) {

                       if(toType == Point.class) {

                                Point p = new Point();

                                String[] strs = (String[])value;

                                String[] xy = strs[0].split(",");

                                p.x = Integer.parseInt(xy[0]);

                                p.y = Integer.parseInt(xy[1]);

                                return p;

                       }

                       if(toType == String.class) {

                                return value.toString();

                       }

                       return super.convertValue(value, toType);

             }

    }

    public class MyPointConverter extends StrutsTypeConverter{

             @Override

             public Object convertFromString(Map context, String[] values, Class toClass) {

                      

                                Point p = new Point();

                                String[] strs = (String[])values;

                                String[] xy = strs[0].split(",");

                                p.x = Integer.parseInt(xy[0]);

                                p.y = Integer.parseInt(xy[1]);

                                return p;

                      

                      

             }

             @Override

             public String convertToString(Map context, Object o) {

                       // TODO Auto-generated method stub

                       return o.toString();

             }

    }

    c)      三种注册方式:

    i.       局部:XXXAction-conversion.properties

    1.      p(属性名称) =  converter

    ii.      全局:xwork-conversion.properties

    1.      com.xxx.XXX(类名)= converter

    iii.     Annotation

    d)      如果遇到非常麻烦的映射转换

    i.       request.setAttribute();

    ii.      session

  • 相关阅读:
    mybatis源码追踪2——将结果集映射为map
    Mybatis的cache
    mybatis拦截器
    mybatis中单个参数的引用
    mybatis源码追踪1——Mapper方法用法解析
    win8 下 intellij idea 13 中文输入覆盖的问题
    firebug中html显示为灰色的原因总结
    extjs4.0以上添加多行工具栏的方法
    去除eclipse的validating
    An interview question from MicroStrategy
  • 原文地址:https://www.cnblogs.com/flying607/p/3473845.html
Copyright © 2011-2022 走看看