日期:2014-05-16 浏览次数:20416 次
网上流传的jsonplugin只适用于Struts2.0,2.1,如果版本2.3的Struts返回的结果会有问题。
经过查找发现此jar包已经成为struts2.3的一部分,以下实现返回给浏览器页面为json格式内容
?
引入Struts2插件
? struts2-json-plugin-2.3.4.1.jar
? 及其他Struts 2.3.xxx相关包
?
Deom:
?
public class JSONExample3 { private String json = "223"; private String field1 = "str"; private int[] ints = {10, 20}; private Map map = new HashMap(); private String customName = "custom"; private User user; private List<User> lUser; //'transient' fields are not serialized private transient String field2; //fields without getter method are not serialized private String field3; public String execute() { map.put("John", "Galt"); user = new User(); user.setDescription("111"); user.setPassword("133"); user.setUsername("aaa"); lUser = new ArrayList<User>(); lUser.add(user); json = "1112222"; return Action.SUCCESS; } // 属性set、get略 }?
?
struts.xml配置:只输出特定几个属性
?
<package name="example" extends="json-default"> <action name="JSONExample" class="JSONExample3"> <result type="json"> <param name="includeProperties"> lUser, field1, json </param> </result> </action> </package>
?
?
访问URL(IHWS是项目名称):
http://127.0.0.1:8999/IHWS/JSONExample
?
输出结果为
?
{"field1":"str","json":"1112222","lUser":[]}?
?
?
?
学习参考
?
?