名字是我随便想的,最近设计UI,灵感有点枯竭了。不过据说无限手套是个好东西,神奇一般的存在。跑偏了......尴尬表情状。
上回参数绑定我们没说完SpringMVC——打怪升级。现在接着说。
绑定数组
每个商品前有一个checkbok,选中多个商品后点击删除按钮把商品id传递给Controller。
'${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方法中可以用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';
}
public class QueryVo {
private Item item;
private Integer[] ids;
set/get...
}
绑定到List
将表单的数据绑定到List,List中存放对象,并将定义的List放在包装类QueryVo中。
public class QueryVo {
private Item item;
private Integer[] ids;
private List itemsList;
set/get...
}
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语法格式错误。下来就是处理方式。
/**
* 接收日期类型参数
*
*/
@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'/>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
怎么可能这么短,没错这几真的就这么短,参数绑定也讲完了。
周末就该好好放松,劳逸结合可以去看看《复联3》。
最近小编比较忙...(其实是小编最近变得比较懒了,心累啊!程序员你懂得)这次我的锅,下次努力多讲一点(SpringMVC基础也快完了,讲完了讲啥啊 深思中......)
联系客服