延时队列,相信各位小伙伴并不会陌生,jdk原生提供了延时队列的使用,当然我们这里介绍的不是这种;在实际的项目中,如果我们有延时队列的场景,可以怎样去实现呢
举一个简单的例子,如下单15分钟内,若没有支付,则自动取消订单
本文将介绍一种非常非常简单的实现方式
延时队列,相信各位小伙伴并不会陌生,jdk原生提供了延时队列的使用,当然我们这里介绍的不是这种;在实际的项目中,如果我们有延时队列的场景,可以怎样去实现呢
举一个简单的例子,如下单15分钟内,若没有支付,则自动取消订单
本文将介绍一种非常非常简单的实现方式
在SpringMVC中,拦截器与Filter两者的应用场景好像差不多,最大的区别可能是前者属于Spring的特产,而后者则是Servlert三剑客中的一个,它们本质的区别在于两者发生的时机不一致
基于上面的触发时间的不同,两者可以做的事情也不尽相同
接下来本文将来看一下,在SpringMVC中拦截器的使用姿势
相信所有奋斗在一线的小伙伴,会很关心自己的系统的运行情况,一般来说,基础设施齐全一点的公司都会有完善的报警方案,那么如果我们是一个小公司呢,不能因为基础设施没有,就失去对象的感知能力吧;如果我们的系统大量异常却不能实时的触达给我们,那么也就只会有一个结果–杀个程序猿祭天
本文简单的介绍一种实现思路,基于error日志来实现邮件的报警方案
邮件发送,在实际的项目开发中,可能用的不是特别多,如果没有特定的需求,相信也没有多少小伙伴会特意的去关注,那么如果现在我们希望针对项目做一个异常的报警系统,当出现异常的时候,可以向指定的小伙伴发送邮件提醒,那么让我们来实现这个功能,可以怎么办呢?
这里介绍一下如何使用SpringBoot封装好的MailSender来实现邮件发送
在我们的日常开发中,使用@Value来绑定配置属于非常常见的基础操作,但是这个配置注入是一次性的,简单来说就是配置一旦赋值,则不会再修改;
通常来讲,这个并没有什么问题,基础的SpringBoot项目的配置也基本不存在配置变更,如果有使用过SpringCloudConfig的小伙伴,会知道@Value可以绑定远程配置,并支持动态刷新
接下来本文将通过一个实例来演示下,如何让@Value注解支持配置刷新;本文将涉及到以下知识点
在Mybatis中,插件机制提供了非常强大的扩展能力,在sql最终执行之前,提供了四个拦截点,支持不同场景的功能扩展
本文将主要介绍一下自定义Interceptor的使用姿势,并给出一个通过自定义插件来输出执行sql,与耗时的case
在使用mybatis进行db操作的时候,我们经常会干的一件事情就是将db中字段映射到java bean,通常我们使用ResultMap来实现映射,通过这个标签可以指定两者的绑定关系,那么如果java bean中的字段类型与db中的不一样,应该怎么处理呢?
如db中为timestamp, 而java bean中定义的却是long
BaseTypeHandler来实现自定义的类型转换
通常我们在使用Mybatis进行开发时,会选择xml文件来写对应的sql,然后将Mapper接口与sql的xml文件建立绑定关系,然后在项目中调用mapper接口就可以执行对应的sql
那么如何将Mapper接口与sql进行绑定呢?本文将介绍四种常见的姿势
mybatis.mapper-locations<mapper>指定
SpringBoot项目中借助Mybatis来操作数据库,对大部分java技术栈的小伙伴来说,并不会陌生;我们知道,使用mybatis,一般会有下面几个
本片博文中的注解,放在Mapper上,你知道注册Mapper有几种方式么(这个问题像不像”茴”字有几个写法😬)
Spring在3.1版本,就提供了一条基于注解的缓存策略,实际使用起来还是很丝滑的,本文将针对几个常用的注解进行简单的介绍说明,有需要的小伙伴可以尝试一下
本文主要知识点:
承接上一篇博文【SpringBoot 基础系列】@Value 中哪些你不知道的知识点 中提及到但没有细说的知识点,这一篇博文将来看一下@Value除了绑定配置文件中的属性配置之外,另外支持的两种姿势