SpringMVC——基础
<dependencies>
<dependency>
<groupId>junitgroupId>
<artifactId>junitartifactId>
<version>4.12version>
<scope>testscope>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-webmvcartifactId>
<version>5.2.8.RELEASEversion>
dependency>
<dependency>
<groupId>javax.servletgroupId>
<artifactId>servlet-apiartifactId>
<version>2.5version>
dependency>
<dependency>
<groupId>javax.servlet.jspgroupId>
<artifactId>jsp-apiartifactId>
<version>2.2version>
dependency>
<dependency>
<groupId>javax.servletgroupId>
<artifactId>jstlartifactId>
<version>1.2version>
dependency>
dependencies>
如果创建项目时没有选择web模板而是手动添加的,可能会遇到404的问题:
检查项目发布中有没有lib依赖,没有的话要手动建lib包并且把jar包都丢进去
1.执行原理
1.配置web.xml
2.新建springmvc的配置文件
对应
建立controller类
package com.yl.controller;
?
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
?
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
?
public class HelloController implements Controller {
对应的前端页面就是WEB-INF/jsp/test.jsp
执行原理:
用户输入hello请求-》
3.使用注解开发
1.配置web.xml(固定)
2.springmvc-servlet.xml
3.controller
package com.yl.controller;
?
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
?
4.RequestMapping
可以放在类和方法上
5.RestFul风格
原来的访问地址:/hello?a=1&b=2
此时访问的地址:/hello/1/2
6.重定向和转发
//转发
//return "test";
return "forward:hello";
//return "forward:/WEB-INF/jsp/hello.jsp";
//重定向
//return "redirect:/index.jsp";
//return "redirect:hello";
以上方式都可以
7.接收请求参数
@RequestParam()限制了前端传参的名字,此时只能通过username传值,name失效。
/*
1.接收前端用户传递的参数,假设名字直接再方法上,可以直接使用
2.假设传的是一个对象,匹配对象中的字段名,符合则成功匹配,否则不匹配的字段返回null
*/