【问题标题】:How to use AJAX - JSON to keep a data updated in JSP?如何使用 AJAX - JSON 在 JSP 中保持数据更新?
【发布时间】:2011-11-28 11:52:58
【问题描述】:

我已经查看和搜索了几个小时,但找不到任何易于理解的内容。我必须做一个简单的东西。

所以,我有一个 java 类,它有一个带有 int 变量“lastCustomer”的“Service”对象映射。 这个值发生了变化,我怎样才能在我的“显示”页面中保留更新的数据(不刷新)?

应该使用 AJAX、Javascript 和所有这些东西,但不知道如何。

编辑:

好吧,也许我继续前进。仍然停留在“解析”上。现在我已经编写了一个 servlet,它获取数据并使用“/display/something”打印页面中的所有内容。现在,如何通过 jQuery 访问它?

基本上我有一个对象列表(非常对象具有动态值)。 我必须打印对象并不断更新值。

顺便说一句,servlet 提供给我的 JSON 字符串不会自行更新,它需要刷新。我想我缺少一些基础知识。

一些代码:

    @WebServlet("/JsonServices")
public class JsonServices extends HttpServlet {

    private static final long serialVersionUID = 1L;

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {


        Gson gson = new Gson();
        String json = gson.toJson(myClass.services());

        response.setContentType("application/json");
        response.getWriter().println(json); 
    }
}

【问题讨论】:

  • 看看一些 AJAX 教程。那里或这里的SO已经足够了。我建议你看看jQuery,因为这是迄今为止最容易用于 AJAX 的库。
  • 您目前的问题不清楚。是ajax轮询吗?还是解析接收到的 JSON?后者实际上属于另一个问题。
  • 我认为两者兼而有之。第一个问题是更新数据:当我刷新页面时,servlet 会向我发送 JSON 字符串,我怎样才能在不刷新的情况下获得新数据?之后,我有了我的 JSON 字符串。问题是如何使用打印在页面上的数据.. [我认为应该很容易使用它们:gson.fromJson(datas),这就是对象]

标签: javascript ajax json jsp


【解决方案1】:

实际上,您需要一个长轮询解决方案。当事情发生变化时,它会触发你。 但是你当然可以用 ajax 做类似的事情。

 function refresData(){
      $.ajax({
      url: "serverurl",
      type: "GET"
      success: function(data){
        //it will be your json or xml
      }
    });
   }

var refreshInterval = setInterval(refreshData, 30 * 1000);//30 seconds
refreshData();

【讨论】:

    猜你喜欢
    • 2015-03-22
    • 2019-05-13
    • 1970-01-01
    • 1970-01-01
    • 2013-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-05
    相关资源
    最近更新 更多