qq_35202514
cxy_zj
采纳率33.3%
2018-03-31 03:05 浏览 1.5k
已采纳

springmvc如何确定自定义转换器接收的参数

5

比如在页面我向springmvc中传入一个对象 对象中 有很多属性 但是我需要把日期类型属性通过我自定义的类型转换器进行转换
,它是怎么确定自定转换器类中接收的参数是对象中的日期属性。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答 默认 最新

  • 已采纳
    cyb890907 cyb890907 2018-03-31 06:41

    public class DateConverter implements Converter {

    @Override
    public Date convert(String source) {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            returnsimpleDateFormat.parse(source);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        returnnull;
    }
    

    }




    <!-- 指定自定义转换器的全路径名称 -->



    点赞 1 评论 复制链接分享
  • qq_35415637 Go_For_It_2018 2018-03-31 03:06
    <mvc:annotation-driven conversion-service="conversionService" />
    <!-- 自定义参数转换器 -->
    <bean id="conversionService"
        class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
        <property name="converters">
            <list>
                    <bean class="com.bsw.mybatis.controller.converter.CustomDateConverter"></bean>
            </list>
        </property>
    </bean
    
    点赞 1 评论 复制链接分享
  • asf7532 asf7532 2018-03-31 14:05

    首先controller会自动匹配你jsp页面传过来的值是否和你参数定义的pojo中属性值名称相同,如果包含时间类型则需要在你的controller中自定义一个
    日期转换器,当http请求过来时适配器去执行controller会默认调用自定义日期转换器,把http请求过来的日期数据转换成自定义中的日期格式。

    // 自定义属性编辑器(早期)
    @InitBinder
    public void initBinder(WebDataBinder binder) throws Exception {
    binder.registerCustomEditor(Date.class, new CustomDateEditor(
    new SimpleDateFormat("yyyy-MM-dd HH-mm-ss"),true));
    }

    点赞 评论 复制链接分享

相关推荐