编写RequestUtils,利用BeanUtils封装请求参数的处理(赋值与自动类型转换)过程
?将request中的所有参数设置到entityClass类型的对象上
public class RequestUtil {/** * 将request中的所有参数设置到entityClass类型的对象上 * @param entityClass * @param request * @return */public static Object copyParam(Class entityClass,HttpServletRequest request){try {Object entity = entityClass.newInstance();//把请求中的参数取出Map allParams = request.getParameterMap();Set entries = allParams.entrySet();for (Iterator iterator = entries.iterator(); iterator.hasNext();) {Map.Entry entry = (Map.Entry) iterator.next();String name = (String)entry.getKey();String[] value = (String[])entry.getValue();if(value != null){if(value.length == 1){BeanUtils.copyProperty(entity, name, value[0]);}else{BeanUtils.copyProperty(entity, name, value);}}}return entity;} catch (Exception e) {e.printStackTrace();}return null;}}
?在到servlet页面上就可以直接写?
Article a = (Article)RequestUtil.copyParam(Article.class, request);?不用在通过 request.getparamter();的一个个获取 在插入到article中 ,大大的减少了代码量? 1 楼 jim_cao 2012-03-31 直接这样就可以了,BeanUtils.populate(bean, request.getParameterMap());