zoukankan      html  css  js  c++  java
  • 利用BeanUtils工具类封装表单数据

    一、BeanUtils工具类的使用

      1、首先导入BeanUtils工具类的jar包

            commons-beanutils-1.8.0.jar

            commons-logging-1.1.1.jar

       2、setPropertity(Object bean,String name,Object value)方法

          作用:为实体类bean的name属性设置属性值value(属性值为Object类型,可以以其他类型的对象为值)

      3、populate(Object bean,Map properties)方法

          作用:将map中的键值对,赋值给实体类bean的对应属性

             populate封装对象时,实际上是调用了该对象所属类的set方法,因此页面表单内元素的name属性值一定要与实体类中的属性名一致

             也就是与set方法中去掉set,并将剩下字符串的首字母小写的到的字符串一致

    二、自定义类封装表单数据

      步骤:

        1、通过request.getParameterMap()方法,获取存储表单数据的map

        2、通过BeanUtils工具类的populate(t,map)方法,给实体类对象赋值

        3、返回实体类对象

      代码:

     1 public class WEBUtils {
     2     public static <T>T populateObject(HttpServletRequest request,T t){
     3         Map<String, String[]> map = request.getParameterMap();
     4         System.out.println(map);
     5         try {
     6             BeanUtils.populate(t, map);
     7         } catch (Exception e) {
     8             e.printStackTrace();
     9         }
    10         return t;
    11     }
    12 }
    View Code

     注意:为了使自定义的工具类适用于所有实体类,我们将方法的参数设置为泛型,根据调用者传递的实体类对象和请求参数封装表单数据

  • 相关阅读:
    微擎 关注发送推荐消息
    修改 processor.php 文件,监听用户对该应用的消息
    微擎返回图文信息
    微擎客服消息发送的函数
    mui 底部导航栏的实现
    两张表的关联查询
    微擎 截取字符串
    webStorm中NodeJs 没有智能提示
    OpenCV 实现自己的线性滤波器
    OpenCV 基本的阈值操作
  • 原文地址:https://www.cnblogs.com/java-zmj/p/7879023.html
Copyright © 2011-2022 走看看