Spring
官网:spring.io
SpringBootWeb使用步骤
1、创建SpringBoot工程,勾选web开发依赖
2、定义请求处理类~~Controller,定义请求处理方式
java
@RestController//表示当前类是一个请求处理类
public class HelloController {
@RequestMapping("/hello")
public String hello(String name){
System.out.println("name:"+name);
return "hello:"+name+"~";
}
}
3、运行启动类,测试
HTTP协议
Hyper Text Transfer Protocol
特点:
1、基于TCP协议:面向连接,安全
2、基于请求-响应模型:一次请求对应一次响应
3、HTTP是无状态的连接:对事务处理没有记忆能力,每次请求-响应都是独立的
缺点:多次请求间不能共享数据
优点:速度快
HTTP-请求协议
请求数据格式

红色:请求行
黄色:请求头
常见请求头
请求体:POST请求,存放请求参数
get方式和post方式
请求数据获取
java
@RestController
public class RequestController {
@RequestMapping("/request")
public String request(HttpServletRequest request){
//1、获取请求方式
String method = request.getMethod();
System.out.println("请求方式:"+method);
//2、获取请求url地址
String url = request.getRequestURL().toString();//http://localhost:8080/request
System.out.println("请求url地址:"+url);
String uri = request.getRequestURI();
System.out.println("请求uri地址:"+uri);
//3、获取请求协议
String protocol = request.getProtocol();//HTTP/1.1
System.out.println("请求协议:"+protocol);
//4、获取请求参数-name,age
String name = request.getParameter("name");
String age = request.getParameter("age");
System.out.println("请求参数-name:"+name);
System.out.println("请求参数-age:"+age);
//5、获取请求头-Accept
String header = request.getHeader("Accept");
System.out.println("请求头-Accept:"+header);
return "OK";
}
}
HTTP-响应协议
响应数据格式
响应数据:响应行,响应头,响应体
状态码图鉴
java
@RestController
public class ResponseController {
/**
* 方式一:使用HttpServletResponse设置响应数据
* @param response
* @throws IOException
*/
@RequestMapping("/response")
public void response(HttpServletResponse response) throws IOException {
//1、设置响应状态码
response.setStatus(401);
//2、设置响应头
response.setHeader("name","it");
//3、设置响应体
response.getWriter().write("<h1>hello response</h1>");
}
/**
* 方式二:使用ResponseEntity设置响应数据
*/
@RequestMapping("/response2")
public ResponseEntity<String> response2(){
return ResponseEntity.status(401)//响应状态码
.header("name","javaweb-ai")//响应头
.body("<h1>hello response2</h1>");//响应体
}
}