2023年4月1日23:40:11

发布时间 2023-04-02 10:28:22作者: 徐德猫

1、

认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户

授权:经过认证后判断当前用户是否有权限进行某个操作

​ 而认证和授权也是SpringSecurity作为安全框架的核心功能。

2、设置父工程 添加依赖

在父工程中的pom.xml

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.0</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>

创建启动类

@SpringBootApplication
public class SecurityApplication {

    public static void main(String[] args) {
	 //  这个SecurityApplication类的字节码文件传进去,还有参数,注意.XxxxApplication.class中的Xxx是main方法上的那个类名,不要写成SpringApplication
     
        SpringApplication.run(SecurityApplication.class,args);

    }
}

创建Controller

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @RequestMapping("/hello")
    public String hello(){
        return "hello";
    }
}
这里呢,主要看这两个注解@RestController 是@controller和@ResponseBody 的结合

@Controller 将当前修饰的类注入SpringBoot IOC容器,使得从该类所在的项目跑起来的过程中,这个类就被实例化。
@ResponseBody 它的作用简短截说就是指该类中所有的API接口返回的数据,甭管你对应的方法返回Map或是其他Object,它会以Json字符串的形式返回给客户端

怎么说呢?你说我就去理解这个项目的逻辑????
也是,不可能现在什么都不做,那我学完又会很快忘了。
先理解这个项目的逻辑实现,再去学一次spring,还真就要这样蜕变吗?
我一个个人缺点,学完的东西老是忘。
1、没有持续学,也就是停停走走。
2、没有用它做东西。
这个项目的逻辑我已经看了一遍了,对这个项目的认识程度更加深刻,所以真的,如果是跟别人做完一个项目,不去复盘,我觉得没什么用。