springboot整合shiro实现登录验证
今天第一次接触springboot,本来是要学习springboot和shiro整合的,但是由于springboot结构还不太了解,所以先来了解一下springboot。
springboot可以快速创建一个机遇spring的项目,而且让这个项目跑起来只需要很少的配置就可以了,主要有以下核心功能:
1.独立运行的spring项目:springboot可以以jar包的形式来运行,运行一个springboot项目我们只需要通过jar -jar xx.jar类运行。
2.Spring Boot可以内嵌Tomcat,这样我们无需以war包的形式部署项目。
3.提供starter简化Maven配置:使用Spring或者SpringMVC我们需要添加大量的依赖,而这些依赖很多都是固定的,这里Spring Boot 通过starter能够帮助我们简化Maven配置。
4.自动配置Spring 。
5.准生产的应用监控 。
6.无代码生成和xml配置。
下面就是开始搭建环境了
1、先建一个springboot工程
修改项目group和artifact
选择所需要的依赖
再选择一下工作空间就完成了
idea创建springboot项目自带项目入口,不用自己配置
修改一下入口类,运行就能在浏览器里访问该项目了,注意要在入口类加上一个@RestController的注解
package com.jiang.springboot_shiro;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@SpringBootApplication
public class SpringbootShiroApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootShiroApplication.class, args);
}
@RequestMapping(value = "/springboot_shiro",produces = "text/plain;charset=UTF-8")//项目访问URL
public String index(){
return "Hello springboot!";
}
}
现在在浏览器里面输入localhost:8080/springboot_shiro就能看到返回的Hello springboot!
上面这种方式是把入口类作为控制类,如果要将控制器和入口类分离,控制器的包一定要跟启动类是同一目录,如下:
接下来是整合shiro进行认证,代码会在之前的代码上有所改动
pom.xml添加需要的包
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi