有一個實體類,只想返還一部分字段給前端


有一個實體類,只想返還一部分字段給前端

方法一

在實體類上加上添加注解@JsonIgnoreProperties({"value1","value2"})(jackson的注解)

示例實體類

@JsonIgnoreProperties({"value5","value6"})
public class TestJacksonAnnotationBean {
	private String value1;
	
	private String value2;
	
	private String value3;
	
	private String value4;
	
	private String value5;
	
	private String value6;
	
	// get、set方法
}

會返回如下數據格式

{
	"value1":"a",
	"value2":"b",
	"value3":"c",
	"value4":"d"
}

方法二

使用對象屬性映射框架幫我們自動完成對象屬性的映射,常見的有dozerSpring自帶的BeanUtils

  1. 使用dozer

數據源實體類

public class TestJacksonAnnotationBean {
	private String value1;
	
	private String value2;
	
	private String value3;
	
	private String value4;
	
	private String value5;
	
	private String value6;
	
	// get、set方法
}

新建一個實體類TestJacksonAnnotationBeanRes用來存儲你想要返回的字段,例如

public class TestJacksonAnnotationBeanRes {
	private String value1;
	
	private String value2;
	
	private String value3;
	
	private String value4;
	
	// get、set方法
}

接着使用dozer來幫我們完成實體類屬性的自動映射

TestJacksonAnnotationBeanRes target = mapper.map(sourceBean, TestJacksonAnnotationBeanRes.class);
  1. 使用Spring自帶的BeanUtils
BeanUtils.copyProperties(sourceBean, targetBean);

注意:

  1. 需要實體類字段名稱相同

  2. 對List集合同樣有效


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM