反射将Bean中属性为null的设置为""

1、利用反射将Java Bean中string类型属性值为null的设为""

 1 SomeClass obj = new SomeClass();
 2 Class c = SomeClass.class;
 3 Field[] fields = c.getDeclaredFields();
 4 for(int i = 0; i < fields.length; i++)
 5 {
 6     String fieldName = fields[i].getName();
 7     fieldName = fieldName.substring(0, 1).toUpperCase() + fieldName.substring(1);
 8
 9     try
10     {
11         Method getM = c.getMethod("get" + fieldName);
12         String strVal = (String) getM.invoke(obj);
13         if(strVal == null)
14         {
15             Method setM = c.getMethod("set" + fieldName, String.class);
16             setM.invoke(obj, "");
17         }
18     }
19     catch (Exception ex)
20     {
21         LOGGER.error("Java Reflect Error " + ex.toString());
22     }
23 }
时间: 2024-10-20 07:11:02

反射将Bean中属性为null的设置为""的相关文章

spring中使用@RequestBody,对应的bean中属性名大写注入为空的解决方法

最近做项目用到了spring的新特性@RequestBody,非常好用,客户端发送的json串直接给转换并且注入给bean,以前自己用都是按照SUN的java命名规范进行的项目开发,没发觉有什么异常. 给客户做项目,得按照客户的需求来,客户的需求是不受什么规范约束的,恰好客户给的需求是json串里面的变量名首字母全是大写,囧,如果按照常规java命名规则的话这是给class命名的方法. 等到做出几个接口之后,自己测试时,发现用@RequestBody死活将客户端传过来的变量赋不到相应的bean中

SpringMVC 中List 对象转换成Json格式 List对象中属性为NUll解决

问题起因:今天在做一个EasyUI 同步树的时候,在SpringMVC中用 @ResponseBody标签将List<tree> 集合转换成Json数据的时候,出现一些原因. 问题描述:1.tree对象有个List<tree>属性需要为空,这个是做树用的,下级没值当然不能有null了 代码: [{"id":1,"text":"权限管理 ","state":"closed  ",&qu

Spring3.2中返回JSON去掉Bean中NULL值

在Spring3.2中返回Json字符串,过滤掉不需要的Bean中属性对应Json中key的value=null的值,可以同过在Bean中加入注解的方式来过滤 使用jackson-all-1.8.1.jar包,在需要序列化输出Json的类上添加如***解 import org.codehaus.jackson.map.annotate.JsonSerialize; @JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL) public cl

清除bean中所有非基本数据类型的属性值

利用beanutils清除javabean中所有非基本数据类型的属性值: import com.google.gson.Gson; import lombok.Data; import org.apache.commons.beanutils.PropertyUtilsBean; import java.beans.PropertyDescriptor; @Data public class RequestParams { private String name; private Integer

使用反射创建Bean、Spring中是如何根据类名配置创建Bean实例、Java提供了Class类获取类别的字段和方法,包括构造方法

Java提供了Class类,可以通过编程方式获取类别的字段和方法,包括构造方法 获取Class类实例的方法: 类名.class 实例名.getClass() Class.forName(className) public class RefTest { @Test public void testRef(){ //Class cls = RefTest.class; //Class.forName("com.jboa.service.RefTest"); //new RefTest()

[原创]java WEB学习笔记98:Spring学习---Spring Bean配置及相关细节:如何在配置bean,Spring容器(BeanFactory,ApplicationContext),如何获取bean,属性赋值(属性注入,构造器注入),配置bean细节(字面值,包含特殊字符,引用bean,null值,集合属性list map propert),util 和p 命名空间

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

java使用反射比较两个bean对象属性值是否相等

import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.HashMap; import java.util.Map; import org.apache.log4j.Logger; public class DomainEquals { /** * 日志操作类 */ private static Logger logger = Logger.getLogger(DomainEquals.c

项目中序列化时,去除属性为null的key

项目中对象属性中的字段有很多时,每次查询需要的属性都不同,但是还是返回null,过滤掉为空的方法 [email protected]标签 此注解用于方法或者属性上(最好就是用在属性上),作用就是在对象做序列化时过滤掉一些为空的属性 [email protected] 此注解一般用于类上,其作用就是在对象做json序列化的时候将java bean中为空的字段去除 [email protected](JsonInclude.Include.NON_NULL) 此注解用于类上,作用就是在对象做序列化的

Spring中&lt;bean&gt;标签之使用p标签配置bean的属性

在spring的bean配置文件中我们常可以见到下面的例子: <bean id="user" class="com.sys.User" p:name-ref="name" /> 其中,p:name-ref="name"使用了p标签来配置bean的name的引用. 在使用p标签配置bean的属性时,我们先要声明p标签的命名空间xmlns:p="http://www.springframework.org/s