java - 如何使用servlets和jsp做一个SPA?

标签 java jsp servlets single-page-application

我正在尝试使用 servlet 和 jsp 页面制作单页应用程序。 目前我有第一页,这很简单:一个转发到相应 jsp 的 servlet。

导航到第二页时应该如何实现? 我猜它应该是一个ajax调用,servlet会填充必要的数据,但是如何显示第二页jsp?

最佳答案

JSP 是一种服务器端 ui 技术。 Servlet 监听特定的 url 并重定向到 JSP 页面。 JSP 被编译成一个类(实际上是另一个 servlet),被调用(数据将被添加并且内联脚本将运行)并且输出是 HTML,被发送到客户端(浏览器)。要访问不同的页面,需要查询服务器 (servlet) 以获取另一个 url,从而生成 另一个 html 页面

要创建 SPA,您需要 客户端 技术,例如 JavaScript。您向服务器查询单个 html 页面。例如,由 HTML 和 JavaScript 构成的页面(甚至可以是单个 JSP 的输出,不要混淆)被发送到客户端(浏览器)并运行 JS。这通常由 AngularJS、EmberJS 或 Backbone 等框架提供支持。设置页面后,页面内的链接是 anchor (http://example.com/ #/mySecondPage),因此单击它们将再次调用框架(Ajax,查询新数据的服务器),但将保持在同一页面上。页面的某些内容可能会被替换为新内容

关于java - 如何使用servlets和jsp做一个SPA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34680098/

相关文章:

Java并发实践 "Listing 7.1. Using a volatile field to hold cancellation state."。同步可见性?

java - 初学者 Java(获取要编译的类分配)

java - 如何选择 ArrayList<List> 中列表的哪一列用于对 ArrayList 进行排序?

java - 无法从 JAR 文件中读取 TLD "META-INF/c.tld"

java - 如何在 JSP 中使用正则表达式打印 HTML 标签?

Java Servlet 上传一个文件到多个文件夹

java - @ManyToOne 未填写父 ID 字段

jsp - 在Velocity或FreeMarker中更好地支持国际化?

java - doPost 请求如何工作?

jakarta-ee - 我们可以在 web.xml 条目中调用没有 <servlet-mapping> 的 servlet