struts2返回json的问题

默认不是所有的get方法返回json嘛.就是如果返回的内容是要通过逻辑判断的,有时可能有有时可能没有.我所想到的方法是在struts.xml中<paramname="ex... 默认不是所有的get方法返回json嘛.就是如果返回的内容是要通过逻辑判断的,有时可能有有时可能没有.我所想到的方法是在struts.xml中<param name="excludeNullProperties">true</param> 然后逻辑判断后把不返回的json属性=null 就没有了.但是我总觉得这样很麻烦.新手不知道普遍处理的方法是怎么样做的 展开
 我来答
侯定强飞掣
2019-07-02 · TA获得超过3539个赞
知道大有可为答主
回答量:3072
采纳率:29%
帮助的人:170万
展开全部
此方法的action不需要返回值,struts.xml中也不需要配置action的result
-------这种方式,通过流的方式将字符串写到页面,一般用作返回一个结果字符串;
像需要返回一个list集合之内的,就需要人为去转化成字符串,麻烦的很,所以就可以用到2:
使用struts-json-plugin.jar,此方法需要将struts.xml继承自json-defaut,并且action的result的type需要设置为json
用json包来自动将集合转换成json字符串返回,页面可以通过对象点属性来获取。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小白AI绘画
2012-02-02 · TA获得超过1358个赞
知道小有建树答主
回答量:303
采纳率:0%
帮助的人:471万
展开全部
如果此属性永远不希望被返回,不写对应的get方法即可

如果是需要判断条件,满足时才返回,把返回条件写在get方法内即可
举个简单的例子
public String getName(){
if(flag) return name;
return null;
}
更多追问追答
追问
那请问如果返回条件的逻辑判断是在action中进行的呢?也就是说如何在execute中决定返回哪些json
追答
class MyAction(){
private boolean flag;//标志位
private String name;
public String execute(){
...//业务逻辑
if(...)//需要的逻辑判断
{flag = true;}
return "success";
}
public String getName(){
//另一种方法,直接在这里写所有的判断逻辑,最后决定返回什么
if(flag) return name;
return null;
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式