【问题标题】:Easy way for AXAX refresh JSP or Spring MVC page?AXAX 刷新 JSP 或 Spring MVC 页面的简单方法?
【发布时间】:2011-07-05 01:12:16
【问题描述】:

这似乎有点像 java web 开发的初级问题,但是......

如何刷新 JSP 页面中的数据?我的意思是,我掌握了基础知识(将 jQuery 用于 AJAX,将 Spring MVC 用于“控制器”并获取数据请求)。让我磕磕绊绊的是,将更新的数据呈现到页面的最简单方法是什么(假设 JSP 都是服务器端的......这不利于客户端更新)?

我考虑过:

  • 在 javascript 中使用 Mozilla Rhino + Velocity - 这似乎有点麻烦

  • 使用“新”的 Spring AJAX MVC 改进 - 我觉得这方面的例子有点混乱。

  • 通过业务逻辑+速度在 Spring Controller 的 get 方法中返回一个半渲染的字符串 - 我不确定这样做是否“正确”,建立起来感觉有点脏Controller 类中的视图对象。

有没有一种简单的方法可以完成我的要求?我基本上有一个需要定期重新填充的 html 表。我肯定在这里遗漏了一些东西。

TIA

【问题讨论】:

  • 相关:stackoverflow.com/questions/4112686/…Rhino 至少是一个非常……疯狂的考虑。 Rhino 旨在能够使用 Java 代码解释/执行 JS 代码。但是既然你正在开发一个 web 应用程序,为什么不让 JS 在它应该运行的地方运行,在 web 浏览器中呢?
  • @BalusC - 它的用途不止于此。我使用 Rhino 的意图是使用 LiveConnect 功能;你知道吗?不会太疯狂吧?

标签: java javascript ajax jsp spring-mvc


【解决方案1】:

我的建议是为要刷新的内容指定一个 div。 在指定的时间间隔内,使用来自服务器的新内容重新加载 div。我建议在服务器上生成 html,只生成 jQuery('').load() url。但是您也可以只从服务器获取 json 数据并即时创建您的标记,但这对于大型记录是有问题的。 希望有帮助。

【讨论】:

    【解决方案2】:

    关于在控制器中生成 JSON 或局部视图,这两个选项都有效。如果要生成/修改的 HTML 不太复杂,我会选择 JSON,并且我会选择返回一个 HTML 片段以用于刷新大表或加载新的复杂面板等。要生成 JSON,我通常使用带有 @ResponseBody 注释的 bean 返回类型的 Spring MVC 控制器方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-07
      • 2014-11-15
      • 2012-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-25
      相关资源
      最近更新 更多