精华内容
下载资源
问答
  • 通过反射判断对象的所有属性是否为空 public static boolean isAllFieldNull(Object o) { try { for (Field field : o.getClass().getDeclaredFields()) { //把私有属性公有化 field.setAccessible(true); ...

    通过反射判断对象的所有属性是否为空

        public static boolean isAllFieldNull(Object o) {
            try {
                for (Field field : o.getClass().getDeclaredFields()) {
                    //把私有属性公有化
                    field.setAccessible(true);
                    Object object = field.get(o);
                    if (object!=null) {
                        return false;
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
                return false;
            }
            return true;
        }

    如果想判断对象中,除了某个属性,其他属性是否都为空,可以在遍历判断时,增加名字判断即可

      if (object!=null&& field.getName()!="number") {
                        return false;
            }

     

    展开全文
  • java 复制非空对象属性值 public static void main(String[] args){ User u1 = new User(); u1.setName("AAA"); u2.setArea("中国东莞"); User u2 = new User(); u2.setName("BB"); Bea

    目录

    1. 获取对象属性值为空的属性名称

    2. 复制对象非空属性值


    1. 获取对象属性值为空的属性名称

    	/** 
    	* @Title: getNullPropertyNames
    	* @Description: 获取值为空的属性名称
    	* @createdBy:byrc
    	*/
    	public static String[] getNullPropertyNames(Object source) {  
    		BeanWrapper src = new BeanWrapperImpl(source);  
    		PropertyDescriptor[] pds = src.getPropertyDescriptors();  
    	
    		Set<String> emptyNames = new HashSet<String>();  
    		for (PropertyDescriptor pd : pds) {  
    			Object srcValue = src.getPropertyValue(pd.getName());  
    			if (srcValue == null)  
    				emptyNames.add(pd.getName());  
    		}
    		String[] result = new String[emptyNames.size()];  
    		return emptyNames.toArray(result);  
    	}

    2. 复制对象非空属性值

    	public static void main(String[] args){
    		
    		User u1 = new User();
    		u1.setName("AAA");
    		u2.setArea("中国东莞");
    		
    		User u2 = new User();
    		u2.setName("BB");
    		
    		BeanUtils.copyProperties(u2, u1,getNullPropertyNames(u2));
    	}
    

     

     

     

    展开全文
  • 业务逻辑中需要将对象中为空字符串的属性转换为null,简单的一种方式是前端JS控制,如果为空字符串则不传到后台,后台接收到没有值的属性默认为null。这种方式会导致JS繁琐。下面用后台的方式来解决此问题。 ...

    业务逻辑中需要将对象中为空字符串的属性转换为null,简单的一种方式是前端JS控制,如果为空字符串则不传到后台,后台接收到没有值的属性默认为null。这种方式会导致JS繁琐。下面用后台通过反射的方式来解决此问题。

        public static <T> T setNullValue(T source) throws IllegalArgumentException, IllegalAccessException, SecurityException {
            Field[] fields = source.getClass().getDeclaredFields();
            for (Field field : fields) {
                if (field.getGenericType().toString().equals(
                        "class java.lang.String")) {
                    field.setAccessible(true); 
                    Object obj = field.get(source);
                    if (obj != null && obj.equals("")) {
                        field.set(source, null);
                    } else if (obj != null) {
                        String str = obj.toString();
                        str = StringEscapeUtils.escapeSql(str);//StringEscapeUtils是commons-lang中的通用类
                        field.set(source, str.replace("\\", "\\" + "\\").replace("(", "\\(").replace(")", "\\)")
                                .replace("%", "\\%").replace("*", "\\*").replace("[", "\\[").replace("]", "\\]")
                                .replace("|", "\\|").replace(".", "\\.").replace("$", "\\$").replace("+", "\\+").trim()
                        );
                    }
                }
            }
            return source;
        }

    只需要在处理业务前调用一下上述方法即可。

    展开全文
  • java利用反射机制判断对象的属性是否为空:Map validateMap = new LinkedHashMap();validateMap.put("serial", "编号");validateMap.put("major", "专业");public static String validateFiledIsNull(Map fileds,T ...

    java利用反射机制判断对象的属性是否为空:

    Map validateMap = new LinkedHashMap();

    validateMap.put("serial", "编号");

    validateMap.put("major", "专业");

    public static String validateFiledIsNull(Map fileds,T obj) throws Exception{

    String ret ="";

    for(String key:fileds.keySet()){

    String getMethodStr = "get" + key.substring(0,1).toUpperCase()+key.substring(1);

    Method m = obj.getClass().getMethod(getMethodStr);

    Object value = m.invoke(obj);

    if(value==null || value.toString().trim().equals("")){

    if(!validateString(ret)){

    ret=fileds.get(key);

    }else{

    ret+=","+fileds.get(key);

    }

    }

    }

    return ret;

    }

    展开全文
  • //判断该对象是否: 返回ture表示所有属性为null 返回false表示不是所有属性都是null //子类对象判读为空不包括父类的字段 public static boolean isAllFieldNull(Object obj) throws Exception{ Class cla = ...
  • java 判断对象的所有属性为空

    千次阅读 2019-07-23 15:11:50
    import java.lang.reflect.Field; public class aaaaaa { public static void main(String[] args) throws Exception { person p = new person(); p.setAge(10); p.setNa...
  • public static boolean allEntityfieldIsNUll(Object o){ try{ for(Field field:o.getClass().getDeclaredFields()){ field.setAccessible(true);//把私有属性公有化 ...
  • 1、java利用反射机制判断对象的属性是否为空: Map<String,String> validateMap = new LinkedHashMap<String, String>();validateMap.put("serial", "编号");validateMap.put("major", "专业"); ...
  • public static void main(String[] args) throws Exception { ReflesStudy rs = new ReflesStudy(); rs.setName("zhangsan"); rs.setSex("nan"); Class cs = rs.getClass(); boolean isFlag =
  • 判断1个对象所有属性是否为空. 可以使用反射机制实现 .  核心参考代码: //判断该对象是否: 返回ture表示所有属性为null 返回false表示不是所有属性都是null  public static boolean isAllFieldNull...
  • public static boolean isEmpty(Object obj, String objProperty) throws Exception, IllegalAccessException { // 获取类对象 Class&lt;?&gt; clazz = obj.getClass(); // 得到属性集合 F...
  • static关键字» static关键字可以修饰属性■ 称为静态...属性名称注意:当引用名称的值null时,也可以访问静态属性,不会出现指针异常■ 类优先于对象,也就是说类的生命周期比较长» static关键字可以修饰方法...
  • 判断一个对象的所有属性是否为空 直接上代码 public static boolean allFieldIsNotNull(Object o) { try { for (Field field : o.getClass().getDeclaredFields()) { //把私有属性公有化 field.setAccessible...
  • @Service ...//static public static AServiceImpl dynamicProxy; @Autowired private AMapper aMapper; @PostConstruct public void init() { System.out.println("AServiceImpl init");
  • 近日在做网络通信服务器和客户端的Java语言开发,碰到了获取客户端长连接Channel对象,利用唯一对象Client的获取方法getSingleClientInstance(),以为可以得到,但是显示始终为空指针。之后又换了好几种获取值的办法...
  • 返回ture表示所有属性为null  返回false表示不是所有属性都是null public static boolean isAllFieldNull(Object obj) throws IllegalAccessException { Class<?> aClass = obj.getClass();...
  • import java.lang.reflect.Field; import java.util.List; /** *包名: *描述: */ /** * ObjectTest.java * * 时间:2018年11月28日 * 描述: ...// public static Log log =...
  • static关键字可以修饰属性 称为静态属性也叫做类的变量 ...注意:当引用名称的值null时,也可以访问静态属性,不会出现指针异常 类优先于对象,也就是说类的生命周期比较长 案例: 分析图: ...
  • static void copyNonNullPropertiesStatic(Object source, Object target) { final BeanWrapper wrappedSource = new BeanWrapperImpl(source); String[] nullPropertyNames = Stream.of(wrappedSource.getPrope...
  • 有一些业务场景下,我们需要判断某个对象的属性是否全部为空。该怎么做呢? 马上能想到的一个方案是,一个一个判断对象中的属性。这个倒也可以,但是如果要判断的对象比较多,就得给每个对象写一个判断方法(因为每...
  • 下面的代码亲测可用 方法一、 ​ ​ import org.springframework.util.StringUtils; import java.lang.reflect.Field;...import java.lang.reflect.Method;... public static Object checkNull(Object vo) thro...
  • 判断一个对象中的属性为空

    千次阅读 2018-06-03 20:18:29
    import java.lang.reflect.Field; public class ObjectUtil {  public static boolean isAllFieldNull(Object obj){  boolean flag = true;  try {  // 得到类对象  Class st...
  • Java对象中属性null获取到

    千次阅读 2018-02-06 10:29:00
    话不多说,直接贴代码,这里可以进行对json对象参数进行校验的,找到不为空的参数,或者对象所有属性都不为空这样的校验,也许就方便多了呢。 public static List getValue(Object object,List list){ Field[] ...
  • Java对象vo中属性为null的转为"

    千次阅读 2018-05-06 12:33:04
    背景:之所以写这个方法,是因为在用ireport进行打印的时候,如果你查询的结果,实体中的属性为null,那么打印预览的时候会显示一个null,按照要求null是不应该显示,只需要显示空白就可以。写的这个方法就解决了...
  • * 指针异常:调用一个null的对象的 成员属性或者成员方法时,会出现指针异常 */ public class Main { public static void main(String[] args) { Person p = new Person(); p = null; System.out....
  • java--this、static关键字

    2021-01-31 13:33:27
    (1)系统对象分配空间,并将对象成员变量初始化为或0; (2)执行属性值的显式初始化; (3)执行构造方法,将实参传给对象的成员变量进行赋值; (4)返回对象的地址给相关变量。 2.this的本质 this的本质是:...
  • 在《Java中的抽象方法和接口》中,介绍了抽象方法与接口,...(而且,abxtract只能修饰类和方法)下面显示了一个最简单的抽象类public abstract classAbstractClass {public static voidmain(String[] args) {Abstr...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 142
精华内容 56
关键字:

java属性static为空

java 订阅