如何用反射给实体类赋值

在JavaEE项目开发过程中,尤其是在原生的Servlet中,在接收页面传递的参数时,获取请求参数非常繁琐,或者是在原生的JDBC中,在接收数据库返回来的数据时,还要循环取值。这些问题给开发人员带来严重的工作量,在开发过程中非常吃力。那么,该如何解决这个问题呢?这个问题可以用反射来解决,因为反射可以动态的获取类的信息,在给实体类赋值是,我们可以用反射来动态的赋值,这样就可以解决开发人员大量的工作量。其中,下面主要用两个例子来说明,如何通过反射来给实体类赋值。

  1. 获取页面传递过来的参数值,传入HttpServletRequest对象和实体类,其中实体类为泛型T:
    首先创建对象实例,获取到实体类字段名称(与页面参数名称一致)和类型,然后通过字段名称来设置方法名称,下一步获取到页面传过来的参数,再进行一系列的判断,然后给实体类不同的类型赋不同类型的值,返回实体类对象。
    在这里插入图片描述
  2. 获取JDBC数据库返回的值,传入ResultSet对象和实体类,其中实体类是泛型T:
    首先,创建一个List集合对象,通过ResultSet对象获取到元信息,在通过元信息获取到数据库字段和列的总数。下一步循环ResultSet对象,创建实体类对象,循环列的总数,获取到每一列的列名,然后拿数据库的列名和实体类的字段名比较,如果值相等就通过字段名获取到该字段类型,再然后进行类型判断,调用实体类的方法,设置对应类型的值,把实体类添加到List集合中,改变数据库资源,然后返回List集合对象。
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值