com.github.hetianyi.common.Convertible Maven / Gradle / Ivy
package com.github.hetianyi.common;
import com.github.hetianyi.common.util.BeanUtil;
/**
* 通用DO-VO转换抽象工具类,提供DO和VO的互相转换方法。
* 或者其他POJO类之间的相互转换。
*
* @param self type 本身
* @author Jason He
* @version 1.0.9
* @since 1.0.0
* @date 2019-12-26
*/
public interface Convertible {
/**
* 将此对象转换为目标对象
* @param t 目标对象的空实例
* @return 传入的目标对象t
*/
default T convertTo(T t) {
if (null == t) {
return null;
}
return BeanUtil.copyProperties(this, t);
}
/**
* 将目标对象属性复制到此对象
* @param t 目标对象
* @return this
*/
default S convertFrom(T t) {
if (null == t) {
return null;
}
return BeanUtil.copyProperties(t, (S) this);
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy