springboot 服务端通知客户端缓存静态页面资源

服务端通知客户端缓存静态页面资源,这样加快页面的加载。

.没加缓解前效果:

 

 

在application.properties配置,让服务器告诉客服端静态页面资源要缓存

其中,resources.cache-period是缓存时间,3600秒。

spring.resources.add-mappings=true
spring.resources.cache-period= 3600
spring.resources.chain.cache=true
spring.resources.chain.enabled=true
spring.resources.chain.gzipped=true
spring.resources.chain.html-application-cache=true
spring.resources.static-locations=classpath:/static/

 

 

 

只火狐浏览器可见,“已缓存”效果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NTRIP(Networked Transport of RTCM via Internet Protocol,基于互联网协议的差分数据传输)是一种用于实现高精度GPS定位的技术,通常用于农业、测绘、建筑等领域。Spring Boot是一个简化创建Spring应用的框架,可以帮助我们快速开发NTRIP服务端以及客户端。下面是一个基于Spring Boot的NTRIP服务端客户端的示例代码。 ### NTRIP服务端 NTRIP服务端代码如下: ```java import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public class NtripServer { public static void main(String[] args) throws IOException { ServerSocket serverSocket = new ServerSocket(2101); while (true) { Socket socket = serverSocket.accept(); new Thread(new NtripServerThread(socket)).start(); } } } import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.Socket; public class NtripServerThread implements Runnable { private Socket socket; public NtripServerThread(Socket socket) { this.socket = socket; } @Override public void run() { try { InputStream inputStream = socket.getInputStream(); InputStreamReader inputStreamReader = new InputStreamReader(inputStream); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String line = null; while ((line = bufferedReader.readLine()) != null) { System.out.println(line); if (line.startsWith("GET")) { OutputStream outputStream = socket.getOutputStream(); String response = "ICY 200 OK\r\n" + "Content-Type: gnss/data\r\n" + "Server: NTRIP Example Server/1.0\r\n" + "\r\n" + "StreamName,1004,1,1\r\n"; outputStream.write(response.getBytes()); outputStream.flush(); break; } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (socket != null) { socket.close(); } } catch (IOException e) { e.printStackTrace(); } } } } ``` 以上代码包含两个类,`NtripServer`是服务端的入口类,负责监听客户端的连接,并启动新线程去处理客户端请求;`NtripServerThread`是处理客户端请求的线程类,负责读取客户端发送的数据,并返回NTRIP协议的响应数据。 ### NTRIP客户端 NTRIP客户端代码如下: ```java import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.Socket; public class NtripClient { public static void main(String[] args) throws IOException { Socket socket = new Socket("localhost", 2101); OutputStream outputStream = socket.getOutputStream(); String request = "GET / HTTP/1.1\r\n" + "User-Agent: NTRIP Example Client/1.0\r\n" + "Authorization: Basic cm9vdDp0ZXN0\r\n" + "Ntrip-Version: NTRIP/2.0\r\n" + "Connection: close\r\n" + "\r\n"; outputStream.write(request.getBytes()); outputStream.flush(); InputStream inputStream = socket.getInputStream(); InputStreamReader inputStreamReader = new InputStreamReader(inputStream); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String line = null; while ((line = bufferedReader.readLine()) != null) { System.out.println(line); } socket.close(); } } ``` 以上代码是一个简单的NTRIP客户端,负责向服务端发送NTRIP协议的请求,并读取服务端返回的数据。 **注意:**以上代码仅作为示例,实际使用时需要根据具体情况进行修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值