java 反射bean
描述:新bean和旧bean拥有相同的字段属性。将旧bean的属性值,赋给新bean。
Java代码如下:
- /**
- * 反射Bean
- * @param bean 反射的对象
- * @param newBean 要反射的新对象
- * @throws Exception
- */
- public void injectValueBean2Bean(Object bean, Object newBean) throws Exception {
- try {
- Field[] fields = newBean.getClass().getDeclaredFields();
- for (int i = 0; i < fields.length; i++) {
- fields[i].setAccessible(true);
- String fieldName = fields[i].getName();
- String method="";
- if ("CHGLIST".equals(fieldName)){
- continue;
- }
- if("FLTID".equals(fieldName)){
- method="getFltId";
- }else if("PARKINGBAY".equals(fieldName)){
- method="getParkingBay";
- }else if("DEPARTURECORRIDOR".equals(fieldName)){
- method="getDepartureCorridor";
- }else{
- method= "get" + fieldName.substring(0,1)+fieldName.substring(1).toLowerCase();
- }
- String value=(String) bean.getClass().getMethod(method).invoke(bean);
- if(StringUtils.isEmpty(value)){
- value="";
- }
- fields[i].set(newBean,value);
- }
- } catch (Exception e) {
- throw new Exception();
- }
- }
该方法会抛异常,要注意检查get方法的写法,和新旧bean字段是否一致。
java 反射bean的更多相关文章
- java反射bean to bean
/** * Copyright © 2018 fwz Info. Tech Ltd. All rights reserved. * * @Package: com.sm.utils * @author ...
- 利用Java反射机制将Bean转成Map
import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...
- Java反射实战
一.背景 最近的项目中需要使用到Java 反射的知识,以前不怎么了解,也基本没怎么用过,抽出一片时间,来具体学习和实战下Java的反射!拿来和大家分享以及记录方便以后学习! 二.反射相关概念解析 1. ...
- java反射快速入门(一)
本文会从以下几个方面讲起 ① 反射的简单解释 ② java反射的API接口 及 demo ③ 反射的优缺点.应用场景 一.什么是反射? java反射:在程序运行中动态获取类的信息,及动态调用对象的方法 ...
- 不使用BeanUtils,利用Java反射机制:表单数据自动封装到JavaBean
在百度搜“java反射 将表单数据自动封装到javabean ”,第一页显示的都是一样的代码,都是利用导入第三方jar包<commons-beanutils>和<commons-lo ...
- java 反射,注解,泛型,内省(高级知识点)
Java反射 1.Java反射是Java被视为动态(或准动态)语言的一个关键性质.这个机制允许程序在运行时透过Reflection APIs 取得任何一个已知名称的class的内部信息, 包括 ...
- 转:Java反射教程
原文来自于:http://www.importnew.com/9078.html 什么是反射?反射有什么用处? 1. 什么是反射? “反射(Reflection)能够让运行于JVM中的程序检测和修改运 ...
- 利用java反射机制 读取配置文件 实现动态类载入以及动态类型转换
作者:54dabang 在spring的学习过程之中,我们能够看出通过配置文件来动态管理bean对象的优点(松耦合 能够让零散部分组成一个总体,而这些总体并不在意之间彼此的细节,从而达到了真正的物理上 ...
- java反射机制入门01
java反射机制入门是我从极客学院的视频中学习的. 1.反射机制背景概述 反射(Reflection)是java被视为动态(或准动态)语言的一个关键性质.反射机制指的是程序在运行时能够获取任何类的内部 ...
随机推荐
- Git 打补丁流程
A. 使用git制作补丁时, 需要创建一个新的分支, 修改之后再提交只需要修改需要修改的文件, 并使用git -format-patch -M master 将当前的分支与主分支(master)进行比 ...
- Sql 本周当天本期日期转换
--查询当天: --查询24小时内的: --info为表名,datetime为数据库中的字段值 --查询当天: --查询24小时内的: select * from table where DateDi ...
- Spring-cloud微服务 Eureka学习教程-分布式搭建EurekaServer、EurekaClient+Ribbon(中级)
我们这里只有一台服务器,所以我们先仿集群搭建. 完整demo项目代码:https://github.com/wades2/EurekaDemo2 在这之前我们先分析分析Eureka相比其他注册中心的好 ...
- java并发编程,通过Future取消任务
功能:通过Executor框架提供的线程池,提交任务,使用Future取消任务 任务:增长序列号,从0开始隔1s增长1 通过Future指定时间取消任务 IncrementSequence.java ...
- svg用作背景图
svg用做背景图的几种方式 1. 直接使用 background: url('data:image/svg+xml;charset=utf-8,<svg width="10" ...
- poi读取excel的辅助类
补充:对于这个工具已经转为一个工程项目,采用的是saxreader方式,支持大数据文件的读取.具体可以参照 github上的源码,使用可以简单参照wiki.项目wiki地址https://git.o ...
- Stuts2的 "struts.devMode" 设置成true后,不起作用,仍需要重启tomcat
不要用 <constant name="struts.devMode" value="true" />改成: <constant name=& ...
- 算法练习-字符串转换成整数(实现atoi函数)
练习问题来源 https://leetcode.com/problems/string-to-integer-atoi/ https://wizardforcel.gitbooks.io/the-ar ...
- mybase修改内部文件免费使用
关于mybase的介绍就不多说了,下载后一般只有30天的使用期限.以下方法可以无限次使用该软件(当然,每隔一个周期就需要修改myBase.ini) 原文博客详见:https://www.cnblogs ...
- linux lnmp搭建
1.安装nginx: yum install gcc -y yum install -y pcre pcre-devel yum install -y zlib zlib-devel yum inst ...