繁体   English   中英

使用Struts将Java bean转换为json字符串

[英]Convert java bean to json string using Struts

我想使用Struts在JSP页面中呈现内容。

我有实现Serializable的Java Bean类:

public class MyPOJO implements Serializable {
    String name;
    int value;
    // A lot of other members, but all String or int
    // Getters and setters
}

我的表单类带有MyPOJO列表:

public class MyForm extends ActionForm {
    private List<MyPOJO> results = new ArrayList<MyPOJO>();
    // Getter and setter
}

还有一个继承DispatchAction的类,以将MyForm对象传递到页面上。

在jsp页面上,我使用:

<logic:notEmpty name="myForm" property="results">
var jsonData = ${myForm.results};
</logic:notEmpty>

生成的jsp文件中的最终结果是MyPOJO对象的列表:

var jsonData = [com.package.MyPOJO@174aee5,...]

我想知道,在不重写MyPOJO类内部的toString()方法的情况下,还有其他方法可以将其直接转换为json String吗? 我还创建了一个rest服务,该服务返回一个MyPOJO列表,没有toString()方法,它已经可以显示JSON字符串,我想知道为什么它不适用于JSP form bean?

因为您没有重写ArrayList toString()方法。 您的属性是一个必须序列化为JSON的集合。 您可以扩展ArrayList并覆盖该方法,也可以使用已被覆盖并返回JSON字符串的本机JSONArrayJSONObject toString()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM