构建企业网站,wordpress个人,网站系统关键字,app拉新一手渠道目录 什么是Spring MVC实现客户端和程序之间的“连接”1.1 RequestMapping1.2GetMapping1.3PostMapping 获取参数2.1.1 获取单个参数2.1.2 获取多个参数2.1.3 获取对象2.2 后端参数重命名2.3 RequestBody 接收JSON对象2.4 获取URL中参数PathVariable2.5 上传⽂件RequestPart2.6… 目录 什么是Spring MVC实现客户端和程序之间的“连接”1.1 RequestMapping1.2GetMapping1.3PostMapping 获取参数2.1.1 获取单个参数2.1.2 获取多个参数2.1.3 获取对象2.2 后端参数重命名2.3 RequestBody 接收JSON对象2.4 获取URL中参数PathVariable2.5 上传⽂件RequestPart2.6 获取Cookie/Session/header 返回数据请求转发或请求重定向 什么是Spring MVC
Spring MVC 特性
1.Spring MVC 是一个Web框架。
2.Spring MVC 是基于Servlet API 构建的。MVC是Model View Controller 的缩写它是软件工程中的一种软件框架模式它把软件系统分为模型、视图和控制器三个基本部分。
MVC执行流程
1.用户的请求首先先到Controller。
2.Controller将请求转发给Model。
3.Model处理业务并将数据结果给Controller。
4.Controller会将数据给View引擎。
5.View转换数据生成给最终用户。MVC 是⼀种思想⽽ Spring MVC 是对 MVC 思想的具体实现。 现在绝⼤部分的 Java 项⽬都是基于 Spring或 Spring Boot的⽽ Spring 的核⼼就是 Spring MVC。
实现客户端和程序之间的“连接”
1.1 RequestMapping
RequestMapping是 Spring Web 应⽤程序中最常被⽤到的注解之⼀它是⽤来注册接⼝的路由映射的。
1.2GetMapping
GetMapping:实现HTTP连接但只支持GET类型的请求
1.3PostMapping
PostMapping:实现HTTP连接但只支持POST类型的请求
获取参数
2.1.1 获取单个参数 2.1.2 获取多个参数 2.1.3 获取对象
package com.example.demo.model;import lombok.Data;Data
public class User {private int id;private String name;private String password;private int age;
}
package com.example.demo.controller;import com.example.demo.model.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;RestController
RequestMapping(/user)
public class UserController {RequestMapping(/add)public User add(User user) {return user;}
} 2.2 后端参数重命名 2.3 RequestBody 接收JSON对象 2.4 获取URL中参数PathVariable 2.5 上传⽂件RequestPart 2.6 获取Cookie/Session/header
获取Cookie
/*** 获取 Cookie* param ck* return*/RequestMapping(/getcookie)public String getCookie(CookieValue(java)String ck) {return ck;}获取Session
/*** 获取 Session** param name* return*/RequestMapping(/get_sess)public String getSess(SessionAttribute(required false, value SESSION_KEY) String name) {return name;}获取header
RequestMapping(/header)
ResponseBodypublic String header(RequestHeader(User-Agent) String userAgent) {return userAgentuserAgent;
}返回数据
请求转发或请求重定向
forward VS redirect
return 不但可以返回⼀个视图还可以实现跳转跳转的⽅式有两种
forward 是请求转发
redirect请求重定向。// 请求重定向
RequestMapping(/index)
public String index(){return redirect:/index.html;
}// 请求转发
RequestMapping(/index2)
public String index2(){return forward:/index.html;
}