All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.vip.saturn.job.console.utils.SaturnBeanUtils Maven / Gradle / Ivy

The newest version!
/**
 * Copyright 2016 vip.com.
 * 

* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * specific language governing permissions and limitations under the License. *

**/ package com.vip.saturn.job.console.utils; import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanWrapper; import org.springframework.beans.BeanWrapperImpl; import java.beans.PropertyDescriptor; import java.util.HashSet; import java.util.Set; /** * @author hebelala */ public class SaturnBeanUtils { public static void copyProperties(Object source, Object target) { BeanUtils.copyProperties(source, target); } public static void copyPropertiesIgnoreNull(Object source, Object target) { final BeanWrapper beanWrapper = new BeanWrapperImpl(source); PropertyDescriptor[] pds = beanWrapper.getPropertyDescriptors(); Set names = new HashSet<>(); for (PropertyDescriptor pd : pds) { Object value = beanWrapper.getPropertyValue(pd.getName()); if (value == null) { names.add(pd.getName()); } } BeanUtils.copyProperties(source, target, names.toArray(new String[names.size()])); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy