打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
SpringMVC——无限手套

名字是我随便想的,最近设计UI,灵感有点枯竭了。不过据说无限手套是个好东西,神奇一般的存在。跑偏了......尴尬表情状。

上回参数绑定我们没说完SpringMVC——打怪升级。现在接着说。

绑定数组

每个商品前有一个checkbok,选中多个商品后点击删除按钮把商品id传递给Controller。

jsp页面
'${itemList }' var='item'>
 tr>
     td>input type='checkbox' name='ids' value='${item.id}'/>td>
     td>${item.name }td>
     td>${item.price }td>
     td>${item.detail }td>
 tr>
c:forEach>
Controller

Controller方法中可以用String[]接收,或者pojo的String[]属性接收。两种方式任选其一即可。

@RequestMapping('queryItem')
public String queryItem(QueryVo queryVo, Integer[] ids) {
 System.out.println(queryVo.getIds().length);
 System.out.println(ids.length);
 return 'success';
}
pojo
public class QueryVo {
    private Item item;
    private Integer[] ids;
set/get...
}

绑定到List

将表单的数据绑定到List,List中存放对象,并将定义的List放在包装类QueryVo中。

pojo
public class QueryVo {
    private Item item;
    private Integer[] ids;
    private List itemsList;
set/get...
}
jsp页面
c:forEach items='${itemList }' var='item' varStatus='s'>

 input type='checkbox' name='ids' value='${item.id}'/>
 
   input type='hidden' name='itemList[${s.index}].id' value='${item.id }'/>
   input type='text' name='itemList[${s.index}].name' value='${item.name }'/>
 
 input type='text' name='itemList[${s.index}].price' value='${item.price }'/>
 input type='text' name='itemList[${s.index}].detail' value='${item.detail }'/>
tr>
c:forEach>

日期类型处理

springmvc 在接收日期类型参数时,如不做特殊处理 会出现400语法格式错误。下来就是处理方式。

controller
/**
 * 接收日期类型参数
 *
 */

 @RequestMapping('/test')
 public String test(Date birthday){
     System.out.println(birthday);
     return 'index';
 }
自定义类型转换规则

SpringMVC提供了Converter接口,它支持从一个Object转换为另一个Object。

/**
* 全局日期处理类
* Convert
* 泛型T:代表客户端提交的参数 String
* 泛型S:通过convert转换的类型
 
*/

public class DateConvert implements ConverterString, Date> {

   @Override
   public Date convert(String stringDate) {
       SimpleDateFormat simpleDateFormat = new SimpleDateFormat('yyyy-MM-dd');
       try {
           return simpleDateFormat.parse(stringDate);
       } catch (ParseException e) {
           e.printStackTrace();
       }
       return null;
   }
}
注册自定义的类型转换类

   mvc:annotation-driven conversion-service='conversionService'/>  
   
   bean id='conversionService' class='org.springframework.format.support.FormattingConversionServiceFactoryBean'>
       property name='converters'>
           set>
               ref bean='dateConvert'/>
           set>
       property>
   bean>
     
   bean id='dateConvert' class='zpark.convert.DateConvert'/>


END

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|


怎么可能这么短,没错这几真的就这么短

,参数绑定也讲完了。

周末就该好好放松,劳逸结合可以去看看《复联3》。

最近小编比较忙...(其实是小编最近变得比较懒了,心累啊!程序员你懂得)这次我的锅,下次努力多讲一点(SpringMVC基础也快完了,讲完了讲啥啊  深思中......)


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Simple-xom工具
Java资源网 让你的struts能处理日期类型
java 生成20位唯一ID,生成不会重复的20位数字
java获取原生数据后要进行数据转换
springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例
springMVC复杂页面提交 list
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服