SpringBoot 2.0 专栏
文章平均质量分 91
我的SpringBoot 2.0 技术专栏
新时代~农民工
打酱油的程序员
展开
-
从0~1实现分布式锁演变过程
从0~1实现分布式锁工作中用到分布式锁的场景并不多(行业性质决定),后来在一幅漫画中了分布式锁的实现思路对我影响挺深的,在经过一系列的查阅资料后终于决定从0到1自己实现分布式锁。首先看一段模仿减库存代码: @GetMapping("/getStock") public String getStock() { int stock = Integer.parseInt(stringRedisTemplate.opsForValue().get("stock"));原创 2021-08-13 18:11:28 · 210 阅读 · 0 评论 -
SpringBoot之创建定时任务
SpringBoot之创建定时任务缓存创建定时任务Corn 表达式cron表达式解释示例我们在平时开发中经常会遇到这样的场景,比如:我需要定时地发送一些短信、邮件之类的操作,也可能会定时地检查和监控一些标志、参数等,而SpringBoot创建定时任务非常的简单,只需要简单的几步就可以搞定!创建定时任务下面通过实例介绍如何在Spring Boot中创建定时任务,实现每过5秒输出一下当前时间在Spring Boot的主类中加入@EnableScheduling注解,启用定时任务的配置@Spri原创 2021-01-30 10:43:35 · 306 阅读 · 0 评论 -
缓存之Spring缓存
Spring缓存1.引言2. 几个重要参数3. @Cacheable注解3-1 源码3-2 案例4 工作原理4-1 缓存自动配置类 - CacheAutoConfiguration4-2 缓存配置选择器实现方法4.3 通过自动配置报告发现SimpleCacheConfiguration 默认匹配到4.4 缓存管理器-ConcurrentMapCacheManager5 @CachePut 注解6 @CacheEvict 注解1.引言从Spring3开始定义了org.springframework.ca原创 2020-12-26 14:10:55 · 418 阅读 · 0 评论 -
SpringBoot打war包和jar包对比
springBoot读取jar中的配置文件jar 文件解压展开读取方式jar 文件解压展开打包后我的模板是被放在:\BOOT-INF\classes\treeModel读取方式this.getClass().getClassLoader().getResourceAsStream("指定模板");原创 2020-10-27 20:07:49 · 811 阅读 · 0 评论 -
SpringBoot容器初始化/卸载资源的几种姿势
日常开发中长需要在Bean初始化过程中加载一些资源或者是在Bean销毁前释放一些资源,Spring提供了多种不同的方式初始化和销毁Bean。这里我收集了几个分享给进来的朋友们!> 1. initMethod / destroyMethod@Configurationpublic class InitializeOne { @Bean(initMethod = "init", de...原创 2019-11-27 15:21:20 · 708 阅读 · 0 评论 -
SpringBoot中的条件注入@Conditional
我们都知道springBoot之所以可以实现快速开发是因为它有自动配置,而实现自动化配置的核心就是@@Conditional。@Conditional顾名思义,就是条件注解,根据满足某一个特定的条件创建一个特定的Bean源码如下:@Target({ElementType.TYPE, ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME...原创 2019-11-11 21:10:50 · 812 阅读 · 0 评论 -
SpringBoot配置Mybatis多数据源小计
添加 pom.xml依赖<!--阿里巴巴druid数据库连接池--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <...原创 2019-11-07 16:20:55 · 197 阅读 · 0 评论 -
SpringBoot之注册拦截器
Spring MVC中的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),它主要用于拦截用户请求并作相应的处理。例如通过拦截器可以进行权限验证、记录请求信息的日志、判断用户是否登录等。在springBoot中注册拦截器更加方便,如下:1. 自定义一个拦截器类实现HandlerInterceptor 接口,重写 preHandle、postHandle、 af...原创 2019-11-02 16:31:18 · 1708 阅读 · 0 评论 -
SpringBoot中@ControllerAdvice的使用
首先 @ControllerAdvice 增强型控制器,主要用来处理全局数据,一般搭配@ExceptionHandler、@ModelAttribute、@InitBinder 使用有如下三个作用:全局异常处理添加全局数据请求参数预处理1. 全局异常处理@ControllerAdvice 最常见的使用场景就是全局异常处理,可以结合@ExceptionHandler定义全局异常捕...原创 2019-11-01 21:52:09 · 2302 阅读 · 0 评论 -
SpringBoot对静态资源的访问
在springboot中对于静态资源的访问默认提供在以下4个地方:classpath:/META-INF/resources/classpath:/resources/classpath:/static/classpath:/public/其优先级依次降低访问:http://localhost:8093/uploads.html然后删除META-INF/resources/up...原创 2019-10-31 20:46:42 · 474 阅读 · 0 评论 -
SpringBoot对properties的使用
在我们的日常开发中总是免不了一些配置文件,SpringBoot是让我们更好地利用spring框架,简化spring框架复杂的配置,让我们更加专注于业务!spring中的配置方式在SpringBoot同样支持!spring有属性注入,在SpringBoot同样支持!属性注入plication.properties文件中添加如下自定义配置:dept.id=D00001dept.name=物联...原创 2019-10-31 14:19:51 · 694 阅读 · 0 评论