Spring WebApp显示数据库中的动态内容

时间:2018-08-23 22:46:31

标签: java spring rest api model-view-controller

我有一个使用Spring Boot制作的REST API。我可以使用HTTP请求将实体(人员)添加到数据库中。 我想让一个网页动态显示那些实体:每当一个新的Person存储在数据库中时,该页面就会将其显示在列表的顶部。无需刷新页面。

有哪些方法可以实现? JSP是否足够?我需要JavaScript吗?

越简单越好。

1 个答案:

答案 0 :(得分:0)

  

有哪些方法可以实现? JSP是否足够?我需要   javascript?

是的,您需要JavaScript。但是您也可以将其嵌入到JSP中。

这是一个已解决的问题,如果您搜索“ websocket spring”,则会在网络上找到许多示例。示例https://spring.io/guides/gs/messaging-stomp-websocket/

如果您不被JVM-land和RDBMS所困扰,我鼓励您看一下Firebase-Angular堆栈(三向绑定)

进一步阅读

阅读此https://stackoverflow.com/a/12855533/6785908

不建议使用无耻复制,因为仅发布链接是不建议的,因为将来链接可能会断开

  

在下面的示例中,客户端是浏览器,服务器是托管网站的网络服务器。

     

在您了解这些技术之前,您必须了解   经典首先是HTTP网络流量。

     

常规HTTP:

     
      
  1. 客户端从服务器请求网页。
  2.   
  3. 服务器计算响应
  4.   
  5. 服务器将响应发送到客户端。
  6.   

HTTP

  

Ajax轮询:

     
      
  1. 客户端使用常规HTTP(请参见上面的HTTP)从服务器请求网页。
  2.   
  3. 客户端收到请求的网页,并在请求服务器上文件的页面上执行JavaScript   定期间隔(例如0.5秒)。
  4.   
  5. 服务器会计算每个响应并将其发送回,就像正常的HTTP流量一样。
  6.   

Ajax Polling

  

Ajax长轮询:

     
      
  1. 客户端使用常规HTTP(请参见上面的HTTP)从服务器请求网页。
  2.   
  3. 客户端收到请求的网页,并在从服务器请求文件的页面上执行JavaScript。
  4.   
  5. 服务器不会立即响应所请求的信息,而是等待直到有个信息可用。
  6.   
  7. 当有新信息可用时,服务器将以新信息进行响应。
  8.   
  9. 客户端接收到新信息,并立即向服务器发送另一个请求,以重新启动该过程。
  10.   

Ajax Long-Polling

  

HTML5服务器已发送事件(SSE)/ EventSource:

     
      
  1. 客户端使用常规HTTP(请参见上面的HTTP)从服务器请求网页。
  2.   
  3. 客户端收到请求的网页,并在打开与服务器的连接的页面上执行JavaScript。
  4.   
  5. 当有新信息可用时,服务器将事件发送到客户端。

         
        
    • 从服务器到客户端的实时流量,这正是您所需要的
    •   
    • 您将要使用具有事件循环的服务器
    •   
    • 无法与其他域的服务器连接
    •   
    • 如果您想了解更多信息,我发现它们非常有用:(article)(article)(article)(tutorial)
    •   
  6.   

HTML5 SSE

  

HTML5网络套接字:

     
      
  1. 客户端使用常规http(请参阅上面的HTTP)从服务器请求网页。
  2.   
  3. 客户端收到请求的网页,并在打开与服务器的连接的页面上执行JavaScript。
  4.   
  5. 当新数据(在任一侧)可用时,服务器和客户端现在可以互相发送消息。

         
        
    • 从服务器到客户端的实时流量,从客户端到服务器的流量
    •   
    • 您将要使用具有事件循环的服务器
    •   
    • 使用WebSockets,可以与另一个域中的服务器连接。
    •   
    • 还可以使用第三方托管的Websocket服务器,例如Pusherothers。这样,您只需要   实现客户端,这很容易!
    •   
    • 如果您想了解更多信息,我发现这些非常有用:(article),(article)tutorial)。
    •   
  6.   

HTML5 WebSockets

  

Comet:

     

Comet是HTML5之前使用流技术的一系列技术   并进行长轮询以实现实时应用。阅读更多   wikipediathis文章。