一、refer
refer 是请求头中的一个属性,代表当前页面是从哪里来的,或者说是当前页面的来源地址
当我们访问访问淘宝的时候,购买商品,点击购买的时候显示没有登录,他会先提示你进行登录,然后在返回到刚才购买的页面。这个时候就可以使用refer实现
二、BeanUtils
使用BeanUtils将表单中的数据封装成对象 这是Apache提供的一个工具类
需要下载 然后导包,使用populate方法将Map集合中的键值对按照键名=实体属性名的思路 进行映射
BeanUtils.populate(Object bean, Map properties);
比如说Map集合中有这样一个键值对{userCode=‘123’} 然后有一个User的bean,其中也有一个userCode的属性,使用populate方法就会将User对象中的userCode赋值为123
注意:beanUtils 需要commons- logging 和commons- collections这两个依赖,commons- collections不能使用4.x版本之后的,因为已经没有FastMap类 而BeanUtils里面应用了
如果Bean与表单中的数据存在Date类型的数据转换,则可能报如下错误
org.apache.commons.beanutils.ConversionException:DateConverter does not support default String to 'Date' conversion.
需要实现一个日期转换器
三、日期转换器
使用org.apache.commons.beanutils.ConvertUtils 这个工具类,利用其中的register方法,将自己定义的日期转换器进行注册使用
ConvertUtils.register(new BirthdayConverter(),Date.class);
BirthdayConverter() 实现了Converter接口
public class BirthdayConverter implements Converter {
@Override
//Object o 代表表单中传递的日期数据
public Object convert(Class aClass, Object o) {
//表单中的日期格式
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date parse = null;
try {
parse = format.parse(o.toString());
} catch (ParseException e) {
e.printStackTrace();
}
return parse;
}
}