![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
文章平均质量分 90
⊙ω⊙ 在学习的路上越走越远~~~
这个作者很懒,什么都没留下…
展开
-
SpringBoot——安全管理(五)
SpringBoot整合Shiro一、Shiro简介二、整合Shrio测试一、Shiro简介Apache Shiro是一个相对开源的轻量级的Java安全框架,它提供身份验证、授权、密码管理以及会话管理等功能。相对于Spring Security,Shiro框架更加直观、易用,同时也能提供健壮的安全性。在传统的SSM框架中,手动整合Shiro的配置步骤还是比较多的,针对SpringBoot,Shiro官方提供了**shiro-spring-boot-web-starter**用来简化Shiro在Sprin原创 2022-03-02 23:37:19 · 573 阅读 · 0 评论 -
SpringBoot——安全管理(四)
OAuth 2一、OAuth 2简介二、OAuth2 角色三、OAuth 2授权流程一、OAuth 2简介OAuth是一个开放的标准,该标准允许用户让第三方应用访问该用户在某一网站上存储的私密资源(如头像、照片、视频等),而在这个过程中无须将用户名和密码提供给第三方应用。实现这一功能是通过提供一个令牌(token),而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站在特定的时间段内访问特定的资源。这样,OAuth让用户可以授权第三方网站灵活地访问存储在另外一些资源服务器原创 2022-03-01 23:32:25 · 1086 阅读 · 0 评论 -
SpringBoot——安全管理(三)
高级配置一、角色继承二、动态配置权限一、角色继承一般来说角色之间是有关系的,例如ROLE_admin一般具有admin权限,又具有user的权限。那么如何配置这种角色继承关系呢?在Spring Security中只需要开发者提供一个RoleHierarchy即可。例如SpringBoot_管理管理(二) 中为例,假设ROLE_dba是中终极大Boss,具有所有的权限,ROLE_admin具有ROLE_user的权限,ROLE_user则是一个公共角色,即ROLE_admin继承ROLE_user、ROL原创 2022-02-28 23:37:43 · 3500 阅读 · 0 评论 -
SpringBoot——安全管理(二)
基于数据库的认证一、设计数据表在真实项目中,用户的基本信息以及角色等都存储在数据库中,因此需要从数据库中获取数据进行认证。一、设计数据表首先需要设计一个基本的用户角色表。一共三张表,分别是用户表、角色表以及用户角色关联表。角色名有一个默认的前缀“ROLE_”...原创 2022-02-28 21:29:46 · 4122 阅读 · 0 评论 -
SpringBoot——安全管理(一)
SpringBoot——安全管理一、简介一、Spring Security一、简介安全可以说是公司的红线了,一般项目都有严格的认证和授权操作,在Java开发领域常见的安全框架有Shiro和Spring Security。Shiro是一个轻量级的安全管理框架,提供了认证、授权、会话管理、密码管理、缓存管理等功能,Spring Security是一个相对复杂的安全管理框架,功能比Shiro更加强大,权限控制细粒度更高,对OAuth2的支持也更好,又因为Spring Security源自Spring家族,因此原创 2022-02-27 22:51:24 · 3734 阅读 · 0 评论 -
SpringBoot_开发者工具与单元测试
开发者工具与单元测试一、devtools一、devtoolsdevtools简介SpringBoot提供了一组开发工具spring-boot-devtools,可以提高开发者的工作效率,开发者可以将该模块包含在任何项目中,spring-boot-devtools最方便的地方莫过于热部署了。devtools实战基本用法...原创 2022-02-25 00:00:31 · 550 阅读 · 0 评论 -
redis 实战操作RDB和AOF快照持久化
一、RDBRedis将某一时刻的快照(备份的数据库数据)保存成一种称为RDB格式的文件中,这种格式是经过压缩的二进制文件。redis保存和恢复文件,如图1和图2所示。保存RDB数据的命令:有两种,一个是save,一个是bgsave,一般用的都是bgsave命令。1、save命令:save命令会阻塞redis服务器的进程,直到RDB文件创建完,在该期间,redis不能处理任何的命令请求,这就是save命令最大的缺陷。2、bgsave命令:与save命令不同的是,bgsave在生成RDB文件时,会派转载 2022-02-21 21:58:54 · 306 阅读 · 0 评论 -
SpringBoot——整合持久层技术(二)
多数据源一、JdbcTemplate多数据源二、MyBatis多数据源所谓的多数据源,就是一个JavaEE项目中采用了不同数据库实例中的多个库,或者同一个数据源实例中多个不同的库。一般来说,采用MyCat等分布式数据库中间件是比较好的解决方案,这样可以把数据库读写分离、分库分表、备份等操作交给中间件去做,Java代码只需专注于业务即可。不过,这并不意味这无法使用Java代码解决类似的问题,在Spring Framework中就可以配置多数据源,SpringBoot继承其衣钵,只不过配置方式有所变化。原创 2022-02-20 23:57:21 · 340 阅读 · 0 评论 -
SpringBoot——整合持久层技术(一)
SpringBoot整合持久层技术一、整合JdbcTemplate持久层是Java EE中访问数据库的核心操作,SpringBoot中对常见的持久层框架都提供了自动化配置例如JdbcTemplate、JPA等,MyBatis的自动化配置则是MyBatis官方提供的。一、整合JdbcTemplateJdbcTemplate是Spring提供的一套JDBC模板框架,利用AOP技术来解决直接使用JDBC时大量重复代码的问题。JdbcTemplate虽然没有MyBatis那么灵活,但是比直接使用JDBC要原创 2022-02-20 20:47:33 · 881 阅读 · 0 评论 -
SpringBoot——整合Web开发(三)
SpringBoot——整合Web开发(三)一、配置类与XML配置二、注册拦截器一、配置类与XML配置SpringBoot推荐使用Java来完成相关的配置工作。在项目中,不建议将所有的配置放在一个配置类中,可以根据不同的需求提供不同的配置类,例如专门处理SpringSecurity的配置类、提供Bean的配置类、SpringMVC相关的配置类。这些配置类上都需要添加@Configuration。@ComponentScan注解在项目入口的@SpringBootApplication注解中已经提供,因此在原创 2022-02-16 23:59:25 · 255 阅读 · 0 评论 -
手写Spring----包扫描和创建单例bean
一、包扫描和创建单例bean案例创建bean的定义public class BeanDefinition { private Class clazz; private String scope; public Class getClazz() { return clazz; } public void setClazz(Class clazz) { this.clazz = clazz; } p.原创 2022-02-04 22:57:58 · 422 阅读 · 0 评论 -
SpringBoot——整合Web开发(二)
SpringBoot——整合Web开发(二)一、@ControllerAdvice一、@ControllerAdvice顾名思义,@ControllerAdvice就是@Controller的增强版。@ControllerAdvice主要用来处理全局数据。一般搭配@Exceptionhadnler、@ModelAttribute以及@InitBinder使用。...原创 2022-01-23 17:32:27 · 411 阅读 · 0 评论 -
SpringBoot——整合Web开发(一)
SpringBoot——整合Web开发一、返回JSON数据一、返回JSON数据默认实现JSON是目前主流的前后端数据创输方式,SpringMVC中使用消息转换器HttpMessageConverter对JSON的转换提供了很好的支持,在SpringBoot中更进一步,对相关配置做了进一步简化。默认情况下添加依赖 <dependency> <groupId>org.springframework.boot</groupId>原创 2022-01-11 23:43:39 · 499 阅读 · 0 评论 -
SpringBoot_整合视图层技术
SpringBoot_整合视图层技术一、整合Thymeleaf二、整合FreeMarker一、整合ThymeleafThymeleaf是新一代Java模板引擎,类似于Velocity、FreeMarker等传统Java模板引擎。与传统Java模板引擎不同的是,Thymeleaf支持HTML原型。SpringBoot提供了Thymeleaf自动化配置解决方案,因此在SpringBoot中使用Thymeleaf非常方便。SpringBoot整合Thymeleaf主要可通过如下步骤:创建工程,添加依赖原创 2022-01-08 00:52:18 · 328 阅读 · 0 评论 -
SpringBoot_基础配置
SpringBoot_基础配置一、@Spring BootApplication二、定制banner三、Web容器配置四、Properties配置一、@Spring BootApplication@SpringBootApplications注解是添加在项目启动类上的,@SpringBootApplication实际上是一个组合注解,定义如下:@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Inh原创 2022-01-07 23:34:00 · 1422 阅读 · 0 评论