SpringMVC学习笔记---依赖配置和简单案例实现

初识SpringMVC 实现步骤:

  1. 新建一个web项目
  2. 导入相关jar包
  3. 编写web.xml,注册DispatcherServlet
  4. 编写springmvc配置文件
  5. 接下来就是去创建对应的控制类 , controller
  6. 最后完善前端视图和controller之间的对应
  7. 测试运行调试
使用springMVC必须配置的三大件: 处理器映射器、处理器适配器、视图解析器
通常,我们只需要手动配置视图解析器,而处理器映射器和处理器适配器只需要开启注解驱动即可,而省去了大段的xml配置
注解实现SpringMVC 常见注解
@Component 组件 @Service 服务 @Controller 控制 @Respository dao层

控制器
package com.kuang.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; //@Controller注解的类会自动添加到Spring上下文中 @Controller @RequestMapping("/test2") public class ControllerTest2{ //映射访问路径 @RequestMapping("/t2") public String index(Model model){ //Spring MVC会自动实例化一个Model对象用于向视图中传值 model.addAttribute("msg", "ControllerTest2"); //返回视图位置 return "test"; } }

  • @Controller是为了让Spring IOC容器初始化时自动扫描到;
  • @RequestMapping是为了映射请求路径,这里因为类与方法上都有映射所以访问时应该是/test2/t2;
标准maven依赖
4.0.0com.reliable SpringMVC2pom 1.0-SNAPSHOT springmvc-04-controller junit junit 4.12 org.springframework spring-webmvc 5.1.9.RELEASE javax.servlet servlet-api 2.5 javax.servlet.jsp jsp-api 2.2 javax.servlet jstl 1.2 src/main/java **/*.properties **/*.xml false src/main/resources **/*.properties **/*.xml false

一、配置pom.xml
SpringMVC2 com.reliable 1.0-SNAPSHOT 4.0.0springmvc-04-controller javax.servlet servlet-api 2.5 javax.servlet.jsp jsp-api 2.2 src/main/java **/*.properties **/*.xml false src/main/resources **/*.properties **/*.xml false

二、配置web.xml
SpringMVC org.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath:springmvc-servlet.xml 1SpringMVC /

三、配置springmvc-servlet.xml

RestFul 风格 概念
Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
【SpringMVC学习笔记---依赖配置和简单案例实现】功能
资源:互联网所有的事物都可以被抽象为资源
资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作。
分别对应 添加、 删除、修改、查询。
RestFulController(@PathVariable)
package com.kuang.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller public class RestFulController { //映射访问路径 @RequestMapping("/commit/{p1}/{p2}") public String index(@PathVariable int p1, @PathVariable int p2, Model model){ int result = p1+p2; //Spring MVC会自动实例化一个Model对象用于向视图中传值 model.addAttribute("msg", "结果:"+result); //返回视图位置 return "test"; } //映射访问路径,必须是Get请求 @RequestMapping(value = "https://www.it610.com/hello",method = {RequestMethod.GET}) public String index2(Model model){ model.addAttribute("msg", "hello!"); return "test"; } }

SpringMVC学习笔记---依赖配置和简单案例实现
文章图片

使用method属性指定请求类型
用于约束请求的类型,可以收窄请求范围。指定请求谓词的类型如GET, POST, HEAD, OPTIONS, PUT, PATCH, DELETE, TRACE等。
//映射访问路径,必须是Get请求 @RequestMapping(value = "https://www.it610.com/hello",method = {RequestMethod.GET}) public String index2(Model model){ model.addAttribute("msg", "hello!"); return "test"; }

除了添加method,还可以使用注解
@GetMapping
@PostMapping
@PutMapping
@DeleteMapping
@PatchMapping
//映射访问路径,必须是Get请求 @GetMapping(value = "https://www.it610.com/hello") public String index2(Model model){ model.addAttribute("msg", "hello!"); return "test"; }

    推荐阅读