之前写过springboot整合shiro的文章,这里就不在叙述了,这篇文章就是基于springboot整合shiro后融入jsp的项目。
1.项目环境:
springboot 1.5.9,jdk1.8
2.目录结构如下图:
新建webapp目录与resources为同一层级,而resources目录下的static存放的就是js和css等静态文件目录
3.正式配置:
3.1 加入依赖
这里的依赖只是jsp相关依赖,如需其他依赖请自行加入。需要注意的是当加入jstl依赖时候可能会出现pom文件报错的现象,请加入版本号试试,如果没有出现报错情况,请忽略。
<!--添加tomcat依赖模块.-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<!-- 添加servlet依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<!--jsp页面使用jstl标签-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<!-- 使用jsp引擎,springboot内置tomcat没有此依赖 -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
3.2 yml文件配置
请在配置文件中加入如下配置
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
spring.mvc.static-path-pattern=/static/**
3.3 shiro配置
shiro配置是必不可少的,因为shiro框架会拦截前端请求,如果不做过滤,请求地址会被拦截,导致访问失败!
anon的权限:无需认证即可访问
4.demo
4.1 Controller
项目运行后请求地址是http://localhost:8080/page/index,注意这里@Controller不能是@RestController,而方法上面不能用@ResponseBody注解。
@Controller
@RequestMapping("/page")
public class PageController {
@GetMapping("/index")
@Override
public String index() {
return "index";
}
}
4.2 jsp页面
css的引入
<link rel="stylesheet" href="/static/styles/bootstrap.min.css">
5.总结
如有不懂的地方欢迎留言,希望自己的经验能够给你提供一些思路,能帮助更多的人。