Java程序猿笔记——基于redis分布式锁实现“秒杀”
最近在项目中遇到了类似“秒杀”的业务场景,在本篇博客中,我将用一个非常简单的demo,阐述实现所谓“秒杀”的基本思路。
业务场景
所谓秒杀,从业务角度看,是短时间内多个用户“争抢”资源,这里的资源在大部分秒杀场景里是商品;将业务抽象,技术角度看,秒杀就是多个线程对资源进行操作,所以实现秒杀,就必须控制线程对资源的争抢,既要保证高效并发,也要保证操作的正确。
Spring Boot中读取配置属性的几种方式
前言
本文介绍Spring Boot中读取配置属性的几种方式,项目示例中用到的application.yml和application.properties定义如下:
application.yml
application.properties
@Value
@Value是比较常见的注入方式,功能强大但一般可读性较差。
java定时任务(三):timerTask定时任务
这种方式是纯粹的java代码,需要继承timerTask接口并重写run方法,创建这个类的时候就会调用run方法。
基本的使用逻辑是:
把自己需要处理的业务逻辑放在自己写的这个继承了timerTask的类中,然后new一个timer并调用schedule方法,在schedule中设定一个新的自己类的对象为参数,同时配置其他时间信息,示例如下:
package schedul
springMVC4.X导入jackson三个核心包报错
本文主要是个人在利用jackson,处理json数据的时候,在spring4.x的环境下导入Jackson的jar包,一开始不知道版本问题,所以跟着视频,在网上随便下载版本,我是下载2.1的版本,之后多次运行,都是出行classnotfund的问题,我确认jar包是没问题的。