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

    基于字段的转换:

    1、写一个类,继承DefaultTypeConverter,覆盖convertValue(Object value, Class toType)

     1 public Object convertValue(Object value, Class toType) {
     2         if(value==null || toType==null || toType!=java.util.Date.class )
     3         {
     4             return false;
     5         }
     6         if(value instanceof java.lang.String[])
     7         {
     8             String[] strs=(String[])value;
     9             if(strs[0]!=null && strs[0].length()>0)
    10             {
    11                 try {
    12                     SimpleDateFormat sdf=new SimpleDateFormat("yyyy-DD-mm");
    13                     return sdf.parse(strs[0]);
    14                 } catch (ParseException e) {
    15                     /*
    16                      * 在struts2框架里,自定义的类型转换器,
    17                      *  如果我们不手动抛出异常,struts2框架只捕获异常,但是并不抛出。
    18                      *  所以框架就会认为类型转换器转换成功,转向成功页面。
    19                      */                    
    20                     throw new RuntimeException(e);
    21                 }
    22             }
    23         }
    24         return new Date();
    25     }

     2、在调用转换转换类的文件夹下,新建一个:类名_conversion.properties,里面配置key=  要转换的类   value=  转换类的全名(cn/.../..conver..)

      

    1 birthday=cn.test.type.DataConver

    3、我们知道,有可能转换失败,所以我们需要显示转换失败信息

      <%@ taglib uri="/struts-tags" prefix="s" %>

      <s:fielderror fieldName="user.birthday"/>

      *但是这样的失败信息是英文,所以我们需要显示为中文信息在类文件夹下,新建一个xml文件,里面设置

      xwork.default.invalid.fieldvalue=提示信息 "{0}".({0}代表字段)

      如果要针对字段进行个性化提示,可以在下面添加:

      invalid.fieldvalue.字段名=提示信息

      *将xml注册到struts.xml中

      

    1 <!-- 
    2         配置所有资源文件,省略后缀名,如果配置多个资源文件时,用","隔开。不仅是国际化资源文件
    3         * 类型转换器的错误提示资源文件(省略后缀名)
    4      -->
    5     <constant name="struts.custom.i18n.resources" 
    6             value="cn.test.type.converter,cn.itcast.i18n.resources">
    7     </constant>

    还可以基于类的转换:转换文件不变,在类的文件夹下新建xwork-conversion.propertices文件,在里面配置

    要转换的类型(java.utiils.xxx)=转换类的全路径(cn.x.xxx)

  • 相关阅读:
    spring boot actuator监控需要注意的点
    spring boot actuator端点高级进阶metris指标详解、git配置详解、自定义扩展详解
    3、尚硅谷_SSM高级整合_创建Maven项目.avi
    elasticSearch插件metricbeat收集nginx的度量指标
    elasticSearch插件的安装以及使用nginx的modles收集nginx的日志
    服务治理平台微服务介绍
    skywalking面板功能介绍2
    skywalking中表字段的信息
    js总结33 :javascript-DOM节点属性
    js教程系列32 :javascript-DOM节点操作
  • 原文地址:https://www.cnblogs.com/liuwt365/p/4206818.html
Copyright © 2011-2022 走看看