细粒度定制化JSON返回字段,精确控制每一个接口方法返回的字段
1. 创建注解CustomReturnJson 标注在controller 的方法上。 示例:
@RequestMapping("/testJson")
@ResponseBody
@CustomReturnJson(include = {"id","topicName","topicImg"})
public Object testJson(@RequestParam("name")String name){
Topic topic = topicService.getByTopicName(name);
return ResultVO.success(topic);
}
只返回 id topicName,topicImg 字段
import java.lang.annotation.*;
/**
* @author XXX
* Date: 2019/4/11
* Description:该注解配合 @ResponseBody 一起使用来细粒度定制返回的json @see {CustomReturnResponseBody.class}
*/
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface CustomReturnJson {
/**
* 返回的json包含哪些字段
*/
String[] include() default {};
}
2.