反射将Bean中属性为null的设置为""
Posted hxy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了反射将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 }
以上是关于反射将Bean中属性为null的设置为""的主要内容,如果未能解决你的问题,请参考以下文章
复制属性的Bean时只拷贝非null属性(跳过null属性)
为什么GlassFish 5.1.0中的JSF将我的@ViewScoped CDI bean的ID属性设置为null?
R 中带 SVM 的插入符号:名称错误(重采样)<- gsub(“^\\.”,“”,名称(重采样)):尝试将属性设置为 NULL
使用 rvest 和 selectorgadget 从 GEO 提取信息,得到错误:“类中的错误(输出)<-“XMLNodeSet”:尝试将属性设置为 NULL”