方法1.使用BeanUntils
所属包org.springframework.beans.BeanUtils。
demo:
Entity实体类
import lombok.Data;
import java.util.Date;
/**
* @author sunyan
* @version 1.0
* @date 2021/3/31 10:29
* @description
*/
@Data
public class User {
private String id;
private String name;
private String age;
private Date birthDay;
private Date createDate;
private String createUser;
}
Vo及使用方法
import com.alibaba.fastjson.JSON;
import lombok.Data;
import org.springframework.beans.BeanUtils;
import java.util.Date;
/**
* @author sunyan
* @version 1.0
* @date 2021/3/31 10:31
* @description
*/
@Data
public class UserVo {
private String id;
private String name;
private String age;
private String birthDay;
public static void main(String[] args) {
User user = new User();
user.setId("1");
user.setName("山中老妖");
user.setAge("9999999");
user.setBirthDay(new Date());
user.setCreateDate(new Date());
user.setCreateUser("贞子");
UserVo userVo = new UserVo();
//直接使用BeanUntils
BeanUtils.copyProperties(user,userVo);
System.out.print(userVo.toString());
}
}
注意
使用BeanUntils工具包需要dto和vo字段的名称和类型都相同才可以使用,如果不同则无法转换
方法2.使用idea插件
插件名称:GeneraAllSetter
创建对象将光标放在生成set方法的对象上,按ALT+ENTER,可以选择no default方法,也可以使用带有默认值的方法。就可以生成所需方法。
适用范围
该方法适合使用在前后端共同开发时,后台在给前端写接口时使用。其中Comvert to atomic可以快速生成对对象的原子引用。