`
huang552
  • 浏览: 102739 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

循环bean的属性

阅读更多
private Map<String, String> bean2Map(Object obj) {
		if (null == obj) {
			return null;
		}
		Map<String, String> map = new HashMap<String, String>();
		BeanWrapper wrapper = new BeanWrapperImpl(obj);
		PropertyDescriptor[] propertys = wrapper.getPropertyDescriptors();

		for (int i = 0; i < propertys.length; i++) {
			String propertyName = propertys[i].getName();
			Object value = wrapper.getPropertyValue(propertyName);
			if (!StringUtil.isNull(value) && !value.equals(obj.getClass())) {
				map.put(propertyName, value.toString());
			}

		}
		return map;
	}

 

分享到:
评论

相关推荐

    spring bean的循环依赖完全掌握.pdf

    为了彻底掌握 Spring Bean 的循环依赖,我们需要搞清楚四个问题:普通 Bean 的非循环依赖 Bean 生命周期的流程、AOP 代理 Bean 的非循环依赖 Bean 生命周期的流程、普通 Bean 的循环依赖 Bean 生命周期的流程和 AOP ...

    Spring框架系列(8) - Spring IOC实现原理详解之Bean实例化(生命周期,循环依赖等).doc

    Spring 框架系列(8)- Spring IOC 实现原理详解之 Bean 实例化(生命周期、循环依赖等) 本文主要研究 Spring 框架中 Bean 的实例化过程,包括 Bean 的生命周期和循环依赖问题的解决方案。在 Spring 框架中,Bean ...

    Spring实例化Bean顺序

    5. **InitializingBean接口**:如果Bean实现了`InitializingBean`接口,Spring会在所有必需的属性设置后调用`afterPropertiesSet()`方法。这个接口的方法调用时机晚于`@PostConstruct`注解的方法,因此实例化顺序会...

    spring的bean加载顺序样例项目

    - 当Spring容器启动时,它首先读取配置文件,解析Bean的定义,并创建一个BeanDefinition对象,该对象包含了Bean的所有信息,如类名、属性、依赖等。 - 如果有`@Component`注解的类,Spring会通过组件扫描找到并...

    Map和Bean灵活转换工具类

    此外,如果Java Bean的属性存在嵌套或者循环引用的情况,转换时需要特别处理,避免无限递归。 总结来说,`MapUtils`和`BeanUtils`是Java开发中处理数据转换的重要工具,它们极大地简化了Map与Bean之间的转换操作,...

    简单了解spring bean的循环引用

    在Spring框架中,Bean的循环引用(Circular Dependency)是指两个或多个Bean之间存在相互依赖的关系,导致Spring在实例化Bean时陷入死循环。这种问题如果不妥善处理,将导致应用程序无法正常启动。本篇文章将深入...

    List转换为List

    然后,使用循环遍历集合中的每一个Bean对象。 2. **创建Map对象**:针对List中的每一个Bean对象,创建一个Map实例。通常情况下,Map会使用HashMap实现。 3. **复制属性到Map**:从Bean对象中获取属性值,将这些值...

    详解Spring Bean的循环依赖解决方案

    2. field属性的循环依赖:通过Field注入Bean实例,导致循环依赖。 检测循环依赖 检测循环依赖相对比较容易。Bean在创建的时候可以给该Bean打标,如果递归调用回来发现正在创建中的话,即说明了循环依赖了。 解决...

    Spring 解决循环依赖的 3 种方式.docx

    2. 属性setter循环依赖(Setter-based circular dependency) 与构造器不同,setter注入的循环依赖可以通过“半初始化对象”(即只完成了实例化,但尚未注入依赖的对象)来解决。Spring在创建Bean时会检查是否处于...

    Spring IOC原理补充说明(循环依赖、Bean作用域等)

    2. **属性注入(setter方法)的循环依赖**:Spring可以在Bean实例化后,但在属性填充前检测并解决。Spring通过提前暴露一个“半成品”Bean(即只实例化但未注入属性的对象)来打破循环依赖。当检测到循环依赖时,会...

    Spring循环依赖报错Bean with name ‘**’ has been injected into other beans [**] in its raw version as part

    在Spring框架中,循环依赖(Circular Dependency)是指两个或多个Bean之间形成的一种相互依赖关系,导致Spring容器在初始化这些Bean时遇到困难。当一个Bean依赖于另一个Bean,而后者又反过来依赖于前者,就会出现...

    Spring的3级缓存和循环引用的理解.doc

    - **只用singletonObjects和earlySingletonObjects**:由于早期bean引用并不包含AOP代理,因此在这种情况下,如果bean需要代理(如`@Transactional`),则无法正确处理循环依赖,因为代理对象的创建是在属性设置和...

    Spring Ioc源码分析系列--自动注入循环依赖的处理.doc

    在进行属性填充时,可能会再次创建其他 bean,从而避免了循环依赖的出现。 通过一个示例,我们可以看到 Spring 如何处理循环依赖的。我们创建了两个 bean,CycleA 和 CycleB,它们之间存在循环引用的情况。在启动...

    idea插件实现自动set属性拷贝

    Student student=new Student(); (Student2)student //在这个表达式(记得光标在表达式里面哦)按下alt+Enter,选中“哟嚯。。。好爽啊”就能自动生成下面代码 Student2 student2=new Student2();...

    Struts标签-bean标签-源代码

    如果指定了`bean`属性,则会包含一个JavaBean。 ```jsp &lt;bean:include page="header.jsp" /&gt; ``` 3. `&lt;bean:write&gt;`:此标签用于输出JavaBean的属性值。它需要`name`属性来指定JavaBean的名字,`property`属性来...

    详解Spring-bean的循环依赖以及解决方式

    Spring Bean 循环依赖详解及解决方案 在 Spring 框架中,Bean 的循环依赖是指两个或多个 Bean 之间的相互依赖关系,形成闭环。这种情况可能会导致 Bean 创建失败或出错。下面详细介绍 Spring Bean 的循环依赖及解决...

    针对大厂面试,模仿Spring写的简易版IOC小框架,完美解释三级缓存解决属性注入循环依赖的问题

    当检测到循环依赖时,Spring会先尝试从一级缓存中获取bean,如果找不到,就从二级缓存中获取预初始化的bean实例,若还不能满足需求,则进行实例化并填充属性,同时放入二级缓存。最后,当所有依赖都满足后,才将bean...

    理解Spring循环依赖.docx

    1. **早期singletonObjects**:当一个bean实例化并初始化到一定程度(即属性被填充但回调方法未执行)时,Spring会将其放入此缓存,用于解决循环依赖。 2. **singletonFactories**:当bean完全初始化之前,如果遇到...

    动态bean,自动动态输出数据库列和数据到jsp页面

    3. **自动动态输出**: 这个特性意味着系统能够自动检测数据库表的结构,生成对应的Bean属性,并填充从数据库获取的数据。这通常需要解析数据库元数据,例如使用`DatabaseMetaData`接口,然后基于这些信息创建Bean...

Global site tag (gtag.js) - Google Analytics