JAVA
未读
ReentranLock 实现生产者消费者
static ReentrantLock lock = new ReentrantLock();
static Condition empty = lock.newCondition();
static Condition full = lock.newCondition();
服务器部署
未读
爬取自己博客报错 file_get_contents(): SSL operation failed with code 1.
今天用一个爬虫工具爬取自己博客的时候报了一个ssl的错误 出现上面的原因,属于SSL证书不一致造成 解决方法是 修改file_get_contents 函数 $getJson =file_get_contents(staticFiles('assets/json/owo.json',1), fals
ClassPathResource生产环境与部署环境的坑
利用ClassPathResource来获取resource目录下的资源文件,生产环境没有任何问题,当生成jar包部署之后,提示FileNotFoundException。 原因是个人粗心,文件名大小写错了一位。 猜测原因是idea运行时不打成jar包,所以获取文件实质上的利用的windows的文件
SpringBoot动态生成配置文件
Spring生成的jar包运行的话会读取同目录下的application.properties的文件。但是用idea直接跑项目会读取项目根目录的application.properties文件。 原本是通过ApplicationHome类的方法获取当前jar包的目录,对于idea运行的项目只能获取到
SpringBoot通过代码自动重启项目重载配置
近期有一个需求提供一个系统安装的导航界面,所以需要动态设置一些配置文件的项,比如数据库的连接等。 所以需要自动重启一下项目来达到重载配置的效果。 启动类做如下操作 run方法返回一个 ConfigurableApplicationContext ,也就是上下文对象,上下文对象中有一个 close()
JAVA
未读
ThreadLocal学习笔记
概述介绍 ThreadLocal是用来操作 Thread中的 threadLocals (threadLocals 是ThreadLocal 的内部类) 每个线程独占一个 threadLocals 每个线程可以有多个 ThreadLocal Thread中的threadLocals 是一个Map,以
SpringBoot validation自定义校验注解
问题 springBoot2.3之后移除了validation-api,使用的话需要自行添加依赖 <dependency>
<groupId>javax.validation</groupId>
<artifactId>validatio
SpringBoot配置Redis缓存json格式
@Configuration
@EnableCaching //开启注解
public class RedisConfig {
private static final String