下载postman,测试传json数据
用@CookieValue注解将cookie值绑定到控制器中的handler参数。
Controller类中的一个handler
@GetMapping("/CookieTest")
public void handle(@CookieValue("cookie的id(name)") String cookie) {
//...
}
用@RequestHeader注解将请求头绑定到控制器中的handler参数。
Host localhost:8080
Accept text/html,application/xhtml+xml,application/xml;q=0.9
Accept-Language fr,en-gb;q=0.7,en;q=0.3
Accept-Encoding gzip,deflate
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive 300
需要哪一项数据 , name照写即可
@GetMapping("/demo")
public void handle(
@RequestHeader("Host") String host,
@RequestHeader("Keep-Alive") long keepAlive) {
//...
}
什么是原生Api对象:?
HttpSession、HttpServletResponse、ServletContext等在JavaWeb中学习的底层对象
为什么要获取原生Api对象 ?
如何获取原生Api对象?
不必实例化,直接形参列表声明,handler中即可调用:
//注意: 接收原生对象,并不影响参数接收!
@GetMapping("api")
@ResponseBody
public String api(HttpSession session , HttpServletRequest request,
HttpServletResponse response){
String method = request.getMethod();
System.out.println("method = " + method);
return "api";
}
在 JavaWeb 中,共享域指的是在 Servlet 中存储数据,以便在同一 Web 应用程序的多个组件中进行共享和访问。常见的共享域有四种:ServletContext
、HttpSession
、HttpServletRequest
、PageContext
。
ServletContext
共享域:ServletContext
对象可以在整个 Web 应用程序中共享数据,是最大的共享域。一般可以用于保存整个 Web 应用程序的全局配置信息,以及所有用户都共享的数据。在 ServletContext
中保存的数据是线程安全的。HttpSession
共享域:HttpSession
对象可以在同一用户发出的多个请求之间共享数据,但只能在同一个会话中使用。比如,可以将用户登录状态保存在 HttpSession
中,让用户在多个页面间保持登录状态。HttpServletRequest
共享域:HttpServletRequest
对象可以在同一个请求的多个处理器方法之间共享数据。比如,可以将请求的参数和属性存储在 HttpServletRequest
中,让处理器方法之间可以访问这些数据。PageContext
共享域:PageContext
对象是在 JSP 页面Servlet 创建时自动创建的。它可以在 JSP 的各个作用域中共享数据,包括pageScope
、requestScope
、sessionScope
、applicationScope
等作用域。