@JsonView的处理

@Data
class Person{

    public interface UserSimpleView {};

    public interface UserDetailView  extends UserSimpleView{};




    @JsonView(UserSimpleView.class)
    private String  username ;
    
    @JsonView(UserDetailView.class)
    private String password ; 






}

然后我们在controller层写入数据处理(伪造数据)

@RestController
class PersonController {


@GetMapping("/getpersonsimpleview")
@JsonView(Person.PersonSimpleView.class)
public List getPersonSimpleView(){

    List  persons = new ArrayList<>();

     person.add(new Person());.
     person.add(new Person());
     person.add(new Person());

    return persons;

}


    @GetMapping(value = "getuserdetail")
    @JsonView(Person.UserDetailView.class)
    public Person getUserDetail(@RequestParam(required = false,defaultValue="1") Integer id) {
        System.out.println(id);
        Person person = new Person();
        return person;
    }



}

用postMan工具 来测试一下

第二个方法 我们 usename 和 password

第一个方法 我们 仅仅放回了username

 

这就是大致做的处理了 

你可能感兴趣的:(@JsonView的处理)