2.1 搭建SpringBoot开发环境
2.1.1 搭建IDEA开发环境
Group:例如cn.com.fullstack,前面的com叫【域】,后面的是你自己起的域名。
Artifact:一般是项目名或者模块名
这两个相当于坐标如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找
创建项目成功后
2.2 开发SpringBoot项目-测试视图解析器
2.2.1 新增jsp和jstl的依赖
<!--引入解析jsp的依赖-->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<scope>provided</scope>
</dependency>
2.2.2 自定义视图前后缀
自定义配置文件有两种.properties和.yml,对齐格式不同,挑自己喜欢的就行
1.application.properties
#修改启动端口号
server.port=8080
#访问工程路径前缀localhost:8081/chapter2
server.servlet.context-path=/chapter2
#定义视图前缀
spring.mvc.view.prefix=/WEB-INF/jsp/
#访问文件后缀
spring.mvc.view.suffix=.jsp
2.application.yml
非常注意缩进格式
server:
port: 8080
servlet:
context-path: /chapter2
spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
2.2.3 创建webapp目录(注意不要多次创建)
在jsp目录下新建jsp页面
<%--
Created by IntelliJ IDEA.
User: shi'nei'o'n
Date: 2022/1/11
Time: 22:42
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>第二章</title>
</head>
<body>
<h1>测试jsp页面,视图解析器</h1>
</body>
</html>
2.2.3 开发控制器
启动类和控制器要放在同一包下,因为扫描位置默认同级目录和子目录
package com.springboot.chapter2;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.HashMap;
import java.util.Map;
//控制层注解
@Controller
public class TestController {
@RequestMapping("/test")
@ResponseBody//加了这个就不是跳转jsp页面而是在页面打印Map对象
public Map<String,String> test(){
Map<String,String> map=new HashMap<>();
map.put("key2","value");
return map;
}
//访问localhost:8080/chapter2/index
@RequestMapping("/idx")
public String index(){
return "index";//跳转到名字为index.jsp的页面文件
}
}
如果输入路径后总会跳转到login页面,则需要在启动类中注解添加如下配置
//关闭spring自带的自动拦截器,不然会跳转到login页面
@SpringBootApplication//(exclude = {SecurityAutoConfiguration.class})
运行截图