标签:

在JavaEE  WEB中,我们收集form表单传过来的数据,通常是采用值对象的方式,一一去获取,封装,然后将值对象传到后台进行使用。

如:

String name=request.getParameter("name");

String pwd=request.getParameter("pwd");

String id =request.getParameter("id");

User user =new User();

user.setUid(id);

user.setName(name);

user.setPwd(pwd);每次都这样很麻烦,现在我们有了新的技术

采用这两个包就可以实现。

public void login(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

Map map=req.getParameterMap();

User user = BeanUtils.populate(User.class, map);

System.out.println(user);

在servlet中我们就只需要调用一下就可以做到,User值对象中,我们前台有的参数就能set,没有的也可以不用理会。

但是我们采用这个需要注意:前台页面代码这个参数一定要对上,和值对象中的要一致,不然会不成功,因为在类反射中,我们都是得到变量名,再去调用set+变量名一个大写进行设置的。

public class BeanUtils {

public static T populate(T t,Map map){

try{

org.apache.commons.beanutils.BeanUtils.populate(t,map);

return t;

}catch(Exception e){

throw new RuntimeException(e.getMessage(),e);

}

}

public static T populate(Class cls,Map map){

try{

T t = cls.newInstance();

return populate(t, map);

}catch(Exception e){

throw new RuntimeException(e.getMessage(),e);

}

}上面用到了两个包,只需要将这个相应的参数传过来,我们就可以进行相应的封装(其实用到的就是类反射)

两个包下载地址。

标签:

java需要前台封装对象吗_javaEE之-----------类反射直接封装前台传过来的参数相关推荐

  1. java常用的集合对象_java常用实体类、集合类

    java常用实体类.集合类 [转自51cto博客jichangwei的BLOG] 1:String类,字符串是常量,他们的值在创建之后不能更改,可以共享. equals()用来比较两个字符串的值,== ...

  2. java中map和对象互转工具类

    在项目开发中,经常碰到map转实体对象或者对象转map的场景,工作中,很多时候我们可能比较喜欢使用第三方jar包的API对他们进行转化,而且用起来也还算方便,比如像fastJson就可以轻松实现map ...

  3. java aop 切面判断对象是否是一个类的实例

    for(Object obj:joinPoint.getArgs()){ if(!obj.getClass().equals(ShiroHttpServletRequest.class)) { Str ...

  4. 2.12 IC类元器件的封装应该怎么创建?

    笔者电子信息专业硕士毕业,获得过多次电子设计大赛.大学生智能车.数学建模国奖,现就职于南京某半导体芯片公司,从事硬件研发,电路设计研究.对于学电子的小伙伴,深知入门的不易,特开次博客交流分享经验,共同 ...

  5. java后台传一个对象到前台_前台判断对象中的一个布尔值_springMVC面试题

    1:springMVC工作原理 springMVC架构.png [用户发送请求到前端控制器dispatcherservlet,前端控制器接收到请求之后调用处理器映射器,根据请求url找到具体的处理器, ...

  6. java request 封装对象_java通过request自动封装复杂对象

    参考:Jfinal源码,在上面基础上改的,然后分享出来 适用JAVAEE平台 [Java]代码 /** * 实现深层封装对象的实例 从request封装对象 * 举例: * House.class 属 ...

  7. 【Java基础】 ⾯向对象编程三⼤特性 --封装、继承、多态

    文章目录 封装 继承 多态 封装 把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏.封装是面向对象的特征之一,是对象和类概念的主要特性. 通俗的说 ...

  8. java 类定义_JAVA类与对象(二)----类定义基础

    类是组成java程序的基本要素,是java中的一种重要的复合数据类型.它封装了一类对象的状态和方法,是这一类对象的原型.一个类的实现包括两个部分:类声明和类体,基本格式: class { 属性 方法 ...

  9. java在何时获得对象的确切类型_JAVA面试题(1)

    基础部分 面向对象 1.谈谈你对多态的理解. 答:在java中对于多态的理解是很重要的 多态的定义: 允许不同类的对象对同一消息做出相应,同一消息可以根据发送对象的不同而采用多种不同的行为方式,(发送 ...

最新文章

  1. 为什么百度只收录我的网站首页?
  2. 美团和拼多多是如何拿下长尾市场的
  3. Java实现JsApi方式的微信支付
  4. Openstack组件实现原理 — Nova 体系结构
  5. 百炼OJ:4146:数字方格
  6. 禁止更改计算机名_【复习收藏】计算机操作系统考点归纳
  7. android开发相关资料整理【2011-10-29】
  8. oracle 扩展分区,Oracle 在线扩展分区
  9. java 使用gzip压缩和解压 传输文件必备
  10. mysql字段分隔符拆分_面试题Mysql数据库优化之垂直分表
  11. 梁鑫:重构 - 在美股行情系统的实践
  12. 布朗运动 2 | 布朗运动的推广
  13. android 禁止截屏 工具,Android禁止截屏插件
  14. Electron“安装已中止,安装程序未成功地运行完成”
  15. UVa12304(计算几何中圆的基本操作)
  16. 服务器开启虚拟控制台
  17. 普通壳的脱壳方法和脱壳技巧
  18. 瑞士轮赛制模拟器_Major瑞士轮赛制ELO系统解析 公认的权威规则
  19. MySql学习笔记(2)--数据库操作及数据管理
  20. 边框自定义,border-image助你一臂之力。

热门文章

  1. kubernetes,什么鬼?
  2. flask创建mysql表_请教一下,flask-sqlalchemy 怎么动态创建数据表?
  3. 为什么request的页面与原页面不同_如何在不同页面上使用不同的Joomla CSS
  4. Zookeeper --笔记
  5. cuda 判断nan 处理办法
  6. python c++操作raw文件
  7. pytorch计算模型参数量
  8. python的nan,NaN,NAN
  9. Django 无法加载静态文件(js,css,image)解决办法
  10. matlab imadjust 用 opencv改写