大屏前端框架如何推动企业数据可视化与用户体验的革新
589
2022-12-13
BeanUtils.copyProperties()参数的赋值顺序说明
目录BeanUtils.copyProperties()参数的赋值顺序BeanUtils.copyProperties初体验,及其参数含义解释用处案例: 创建一个源类:source创建一个目标target源类创建测试类testignoreProperties参数案例案例测试
BeanUtils.copyProperties()参数的赋值顺序
BeanUtils.copyProperties(x,y)有两个不同的jar包,引入不同的包,赋值的顺序不一样。
分别是:
org.springframework.beans.BeanUtils
org.apache.commons.beanutils.BeanUtils
引入 1 的话,是将 x 赋值给 y
引入 2 的话,是将 y 赋值给 x
BeanUtils.copyProperties初体验,及其参数含义解释
用处
BeanUtils.copyProperties是org.springframework.beans.BeanUtils;包下得一个用于对象间得属性赋值,避免了常规操作得一个个get再set属性值,非常好用
案例: 创建一个源类:source
private String username;
private String password;
private String email;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "book{" +
"username='" + username + '\'' +
", password='" + password + '\'' +
", email='" + email + '\'' +
'}';
}
}
创建一个目标target源类
private String username;
private String password;
private String email;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "book{" +
"username='" + username + '\'' +
", password='" + password + '\'' +
", email='" + email + '\'' +
'}';
}
}
创建测试类test
import com.sdqj.system_integration.domain.book;
import com.sdqj.system_integration.domain.book2;
import org.springframework.beans.BeanUtils;
public class test {
public static void main(String[] args) {
book bo=new book();
bo.setEmail("1111");
bo.setPassword("222");
bo.setUsername("333");
book2 bo2=new book2();
BeanUtils.copyProperties(bo,bo2);
System.out.println(bo.toString());
System.out.println(bo2.toString());
}
}
结果展示:
ignoreProperties参数
ignoreProperties参数意思是忽略某个参数,使其不被复制,可写多个被忽略得参数
案例
import com.sdqj.system_integration.domain.book;
import com.sdqj.system_integration.domain.book2;
import org.springframework.beans.BeanUtils;
public class test {
public static void main(String[] args) {
book bo=new book();
bo.setEmail("1111");
bo.setPassword("222");
bo.setUsername("333");
book2 bo2=new book2();
BeanUtils.copyPropehttp://rties(bo,bo2,"username","password");
System.out.println(bo.toString());
System.out.println(bo2.toString());
}
结果展示:
还有源代码中得Class> editable参数,不太了解其中得含义,但只能放target(目标类)
案例测试
public static void main(String[] args) {
book bo=new book();
bo.setEmail("1111");
bo.setPassword("222");
bo.setUsername("333");
book2 bo2=new book2();
BeanUtils.copyProperties(bo,bo2,book2.class);
System.out.println(bo.toString());
System.out.println(bo2.toString());
}
结果如下:
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~