java后端受管bean数据转化为JSON格式传到前端javaScript中

java后端受管bean数据转化为JSON格式传到前端javaScript中使用的方法:
后端代码:

package beans;

import javax.inject.Named;
import javax.enterprise.context.RequestScoped;
import org.primefaces.json.JSONException;
import org.primefaces.json.JSONObject;


@Named(value = "mybean")
@RequestScoped
public class mybean {

    private String json;
    public mybean() {

    }

    public String getJson() throws JSONException {
        JSONObject j=new JSONObject();
        j.put("name", "xzx");//放入数据
        j.put("age", 20);
        json=j.toString();//转换字符串
        return json;
    }

    public void setJson(String json) {

        this.json = json;
    }

}

这里需要导入
import org.primefaces.json.JSONException;
import org.primefaces.json.JSONObject;
这是primefaces组件中有,也可直接使用其他json转化jar
前端代码:

<h:body>
        <h:outputLabel value="#{mybean.json}" id="test" style="display: none"/>
        <script type="text/javascript">

            var a=document.getElementById("test").innerHTML;
            var b=eval("("+a+")");
            document.write(b.name+b.age);
        script>

    h:body>

我实在想不到什么好的方法就只有把数据先放入一个outLabel标签里在通过js获取其中的值转换为json数据。方法虽有些笨拙,但相对实现比较简单。



这是本人第一篇博客,望大家多多指教!

你可能感兴趣的:(jsf)