java - 如何从我的休息服务发送一个 json 对象,以便我可以在客户端 javascript 中解析

标签 java jquery ajax json jsp

我只是想从我的服务器返回一个 JSON 对象(使用 ajax)到客户端 - 这样我就可以在客户端读取数据

  @GET
  @Produces("application/json")
  @Consumes("application/json") 
  @Path("/getStatus/")

  public void getStatus(
      @Context HttpServletRequest request,
      @Context HttpServletResponse response) throws ServletException,
      IOException
  {

      //create the JSON Object to pass to the client
      JSONObject object=new JSONObject();

      response.setContentType("text/javascript");    

      try
      {  
            object.put("name", nameDataFromClass);
            object.put("status",someData);

       }
       catch(Exception e)
       {  
            throw new ServletException("JSON Hosed up");  
       }  

       String json = object.toString();  
       response.getOutputStream().println(json);   
  }

这将在 JSP 的客户端中,我想在页面上提取数据

<html>
<head>

<!-- Calls in jQuery file -->
<script src="jquery.js"></script>

<title>JQuery Test</title>

<script>

    $.getJSON("http://localhost:8080/scout/rest/admin/mamba/getStatus",
    function(json) 
    {  
        alert("Server naame: " + json.name);  
    });  



</script>

</head>
<body>



</body>
</html>

最佳答案

Jackson 库应该负责将 json 对象编码到您的对象,反之亦然。只需创建一个简单的 POJO,如下所示:

public class Mystatus{
   public String name;
   public String status;
   public Mystatus(){}  // a default empty constructor is needed
   public Mystatus(String name,String status){
     this.name=name;
     this.status=status;
   }
}

然后从您的 RESTful 网络服务返回此对象:

@GET
@Produces("application/json")
@Consumes("application/json") 
@Path("/getStatus/")

public Mystatus getStatus(
  @Context HttpServletRequest request,
  @Context HttpServletResponse response)
{
  response.setContentType("text/javascript");
  return new Mystatus("Hello","World");
}

关于java - 如何从我的休息服务发送一个 json 对象,以便我可以在客户端 javascript 中解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6377853/

相关文章:

Java SoftReference 奇怪的行为

php - CodeIgniter 中的链接、 Controller

javascript - 尝试从 AJAX 调用 Java 解析 JSON 对象时出现异常

javascript - 时间表的动态页面

Java WatchService 意外停止工作

java - Java的 "this"中 ".addActionListener(this)"关键字指的是什么

asp.net - 使用 jquery 从 UI 调用 WCF 数据服务违反了 MVC 模式

jquery - 旧代码不适用于 jQuery 1.9

ajax - Yii 框架中是否有任何内置方式可以启用 AJAX 表单提交?

java - 如何调整单个 JTable 列的大小而不影响其他表列