IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]Struts2的s:select标签tag对枚举类型的支持,以及iBatis对枚举值的支持

    wangjian5748发表于 2011-09-27 18:24:16
    love 0
    1.枚举类型定义:

    public enum StatusEnum {
        OPEN("正常"),
        CLOSE("关闭");
    
        private String desc;
    
        private LotStatusEnum(String desc) {
            this.desc = desc;
        }
        public String getDesc() {
            return desc;
        }
    }
    

    2.s:select的支持

    在JSP中s:select的示例:


    这里采用OGNL表达式调用静态方法的方式,每个枚举类型都有一个默认的静态方法values(),这个方法返回枚举类型的所有枚举值,然后我们在listKey属性用调用枚举值的name()方法,name()方法默认返回,枚举值的名称字符串(本示例,分别返回OPEN与CLOSE)。listValue属性直接用desc属性。

    3.s:property的支持

    很简单:


    4.iBatis对枚举值的支持

    若Entity的字段类型定义为某个枚举类型,则最好不要复写枚举类型toString()方法,因为iBatis在做insert或者update的时候,默认调用枚举类型的toString()方法来获得枚举值。




沪ICP备19023445号-2号
友情链接