SSM第三天

今天学习内容:

  1.多种参数绑定的传入

    **包装的pojo中的属性名要和传入参数的名字一致(当然包括类型

    以上铺垫

    a)数组 jsp中checkbox的name为items_id

       传入参数即Integer[] items_id

    b)list list包装进包装类,在Controller中传入包装类来得到List

     页面显示

//实现List下标的递增
<c:foreach ..varStatus="status">

name="list[${status.index }].name"

     

    c)map 同理map包装进包装类,名字相同

    页面显示  name="map[key]" value="value"

    

  2.校验

   a)首先要加入valiadator有关jar

   b)在SpringMVC配置校验器

    (其中文档涉及校验乱码问题,需要在编码中加入以下代码

<property name="defaultEncoding" value="UTF-8"/>

    c)在适配器映射器中配置校验器

    

<mvc:annotation-driven validator="validator"> </mvc:annotation-driven>

    d)配置校验规则,在po属性上设置,这里直接写分组校验

    @Size(min=,max=,message="{}",group={.class}

    @NotNull(message="{}",group={.class})

    @Empty(message="{}",group={.class})

    **这里需要注意的是Null和Empty,对象就需要用Null,如今天我用来检验的Date

   e)配置校验信息文件 CustomValidationMessages.properties

     f)开始使用校验

    1.Controller

    先将校验的形参加上校验前缀

    @Validated(value={.class}) xx xx(这里需要校验的对象),BindingResult bingdResult(这里是传入校验错误的信息)

    如果有错误

 

if(bindingResult.hasErrors()){
            List<ObjectError> errors=bindingResult.getAllErrors();
            mandv.addObject("errors", errors);
            mandv.setViewName("editItems");
            return mandv;
        }

 

     a.getAllErrors方法得到所有错误

      b.然后将错误作为param传给jsp

 

    2.jsp页面回显错误消息

    

<c:if test="${ errors!=null}">
<c:forEach items="${errors}" var="error">
${error.defaultMessage}
</c:forEach>
</c:if>

 

 

 

 

    

 

     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值