一尘不染

如何在struts2中仅获取特定字段作为响应

json

我有一个动作类,其中定义了许多动作方法,还定义了适当的getter和setter方法。我有一些操作方法,可以通过从jQuery调用它们来从json中获取数据。但是当我获取json数据时,它包括为getter和setter定义的所有字段,但是我只想获取由我要调用的方法填充的字段。例如-

public class ApplicantRegistration extends ActionSupport{
private String s1;
private XyzBean bean;
private String s2;
// respective getters and setters....

public String m1(){
// some work
 return SUCCESS;
}

public String m2(){
   //some work
    s2="abc";
    return SUCCESS;
}


}

当我通过jQuery调用方法m2并获得json响应时

{
 s1: null,
 bean: null,
 s2:"abc",
 m2: "success",

}

但我只想要

{
 s2:"abc"
}

阅读 205

收藏
2020-07-27

共1个答案

一尘不染

默认情况下,jsonresult序列化root由默认情况下设置为操作的参数指定的所有bean属性。但是您可以使用includeProperties结果的参数仅从root匹配的正则表达式中过滤那些属性。

@Result(type="json", params = {"includeProperties", "^s2"})
2020-07-27