-
Java 中的动态代理
Java 内置 API 使用Proxy类代理一个对象,该对象必须实现一个接口。故Java内置的API只能代理实现了接口的对象。 private static c
-
Java 中的反射
作用 判断任意一个对象所属的类 构造任意一个类的对象 判断任意一个类所具有的成员变量和方法 获取泛型信息 调用任意一个对象的成员变量和方法 处理注解 动态代理
2021-03-31, Views: 1851 , Topics: Java
-
Java8 引入的时间处理类
相关类 Instant:代替 Date DateTimeFormatter:线程安全,代替 SimpleDateFormat LocalTime LocalD
2021-03-30, Views: 2048 , Topics: Java
-
Java FutureTask 源码解析
说明 本文基于Java8。 构造方法 传入Callable对象,使用成员变量接收,并将状态改为NEW。 private Callable<V> ca
-
惊群效应是什么?如何避免惊群效应?
线程惊群 惊群效应(thundering herd)是指多进程(多线程)在同时阻塞等待同一个事件的时候(休眠状态),如果等待的这个事件发生,那么他就会唤醒等待的
-
Java 使用 FutureTask 解决缓存击穿(缓存踩踏)问题
缓存击穿 也叫缓存踩踏。 当缓存中无数据时,所有请求都在数据库访问,到时候数据库压力倍增。 自旋锁方案存在的问题 前一篇文章使用了自旋锁来防止缓存击穿问题,但因
-
解决 HTTP 请求参数中的加号被替换为空格问题
现象 使用GET请求添加query string(?后的参数)或使用Content-Type为application/x-www-form-urlencoded
-
Jedis OOM command not allowed when used memory > 'maxmemory'
原因 Redis内存满了(配置的最大内存为3G) 127.0.0.1:6379> info memory # Memory used_memory:322
-
Spring Boot JdbcTemplate in 语句注意事项
描述 在多条件查询情况下,拼接SQL语句时使用到了in关键词不管参数传入List集合还是Array数组,等到的结果集都是空。 // MySQL List<
2020-10-09, Views: 4586 , Topics: Spring Boot JdbcTemplate Java
-
Java7 文件变动监听
使用场景 应用配置热更新。 代码 可用于监听单个文件变更。 public static void main(String[] args) { try {
2020-09-27, Views: 2212 , Topics: Java
-
Java 中识别字符串编码
添加依赖 <dependency> <groupId>com.googlecode.juniversalchardet</
2020-09-25, Views: 2623 , Topics: Java
-
Java synchronized 锁字符串注意点
描述 使用synchronized关键字,根据不同字符串进行上锁。 public static void main(String[] args) { f
-
使用 Java8 压缩文件
Java8 public class ZipFile { public static Path zip(String dirPath, String
-
Java ObjectMapper 格式化输出 JSON
优雅输出 使用writerWithDefaultPrettyPrinter方法。 public static void main(String[] args)
-
Java 判断后缀是否匹配规则
PathMatcher 使用JDK7提供的API。之前一般使用endsWith判断以指定格式结尾。 public static void main(String
2020-05-26, Views: 2414 , Topics: Java
-
Java 推断资源的 Content-Type
代码 使用JDK7中引入的Files类的probeContentType方法。 获取的Content-Type为image/png、image/jpg等。 pu
2020-05-25, Views: 1880 , Topics: Java Content-Type
-
Spring Boot 获取 resource 目录下的文件
ResourceUtils 虽然Spring提供的工具类ResourceUtils在Windows上可以正常使用,但这个工具类在CentOS上可能会遇到读取不到
2020-05-22, Views: 3834 , Topics: Spring Boot Java
-
Spring Boot 使用 JavaMailSender 发送邮件
添加依赖 <dependency> <groupId>org.springframework.boot</groupId&
2020-05-21, Views: 3881 , Topics: Spring Boot Java
-
Spring Boot 使用 @Valid 校验前端传递的参数
@Valid 使用@Valid注解标注的参数,可直接配置校验注解拦截请求。 @NotNull:字段不能为空。 @NotBlank:字段不能为空或空白字符。 @
2020-05-15, Views: 5804 , Topics: Spring Boot Java
-
Spring Boot 使用 MongoTemplate 操作 MongoDB
引入依赖 <dependency> <groupId>org.springframework.boot</groupId&
2020-05-09, Views: 25079 , Topics: MongoDB Spring Boot Java