如何使用katharsis处理以下情况?

时间:2016-12-15 02:20:31

标签: java json-api katharsis

我有一个模型和存储库。模型具有必须在响应中添加的getter和setter值。我的模型如下

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.katharsis.resource.annotations.JsonApiId;
import io.katharsis.resource.annotations.JsonApiResource;

@JsonApiResource(type="employee") //no i18n
public class Employee { 

    @JsonApiId
    private String name;
    private int emp_id;
    private String dob;

    private String profile_url;

    private String status_message;

    public String getName() {
          return this.name;
    }
    public void setName(String name) {
          this.name = name;
    }

    public int getEmp_id() {
          return this.emp_id;
    }
    public void setEmp_id(int empid) {
          this.emp_id = empid;
    }

    public String getDob() {
          return this.dob;
    }
    public void setDob(String dob) {
          this.dob = dob;
    }

    public String getProfile_url() {
          return this.profile_url;
    }
    public void setProfile_url(String url) {
          this.profile_url = url;
    }

    public String getStatus_message() {
          return this.status_message;
    }
    public void setStatus_message(String message) {
          this.status_message = message;
    } 
 }         

此处变量status_message代表我的api状态。 api响应应该像

  1. 当数据库具有输入id的员工
  2. {name:" rajasuba",emp_id:" 123",dob:" March301993",profile_url:" https:", status_message:"成功"}

    1. 当员工离开组织时,响应应该是
    2. {姓名:" rajasuba",emp_id:" 567",status_messsage:"解雇"}

      1. 当没有这样的员工时,我的回答应该是
      2. {status_message:"无效的员工ID"}

        但是对于以上所有情况,我获得了所有的属性值。如何有选择地忽略特定场景的属性值(如@JsonIgnore)?

1 个答案:

答案 0 :(得分:1)

我不知道您使用的是什么版本的katharsis,但在2.8.2中它支持