随笔分类 - JAVA
摘要:出于安全考虑,阿里云腾讯云等服务器默认封禁TCP25端口出方向的访问流量,所以用户无法在阿里云或腾讯云上的云服务器通过TCP25端口连接外部地址。用户无法通过TCP25端口连接第三方邮件服务商的SMTP服务器对外部发送邮件。这种情况下我们通常可以使用一下两种方案来解决。 一、申请解封25端口 阿里云
阅读全文
摘要:public static <T> List<List<T>> batchList(List<T> list) { List<List<T>> lists = new ArrayList<>(); int pointsDataLimit = 1000;//限制条数 int size = list.s
阅读全文
摘要:背景 在日常开发过程中,使用定时任务去执行一些业务逻辑是很常见的一种场景。比如定时发送短信,邮件,电商系统的定时自动收货、定时上下架功能等等。 一般实现定时任务有以下几种方案: JDK自带 JDK自带的Timer:这是java自带的java.util.Timer类,这个类允许你调度一个java.ut
阅读全文
摘要:配置文件如下: food-category.properties static-food-categories[0].static-food-category-value.id=1 static-food-categories[0].static-food-category-value.key=ME
阅读全文
摘要:public class StreamTest { /** * stream.collect() 的本质由三个参数构成, * 1. Supplier 生产者, 返回最终结果 * 2. BiConsumer<R, ? super T> accumulator 累加器 * 第一个参数是要返回的集合, 第
阅读全文
摘要:import junit.framework.TestCase; import java.util.ArrayList; import java.util.HashMap; import java.util.Optional; import java.util.stream.Collectors;
阅读全文
摘要:面试题 es 在数据量很大的情况下(数十亿级别)如何提高查询效率啊? 面试官心理分析 这个问题是肯定要问的,说白了,就是看你有没有实际干过 es,因为啥?其实 es 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s,坑爹了。第
阅读全文
摘要:FileUtils.java package com.cmbchina.ccd.itpm.project.util; import org.slf4j.Logger; import javax.servlet.http.HttpServletRequest; import javax.servlet
阅读全文
摘要:描述 我们先看一段使用了并行流的代码 @Test public void testStream() { List<Integer> list = new ArrayList<>(); for (int i = 0; i < 10000; i++) { list.add(i); } System.ou
阅读全文
摘要:一、为什么使用 Validation 来验证参数 通常我们在使用spring框架编写接口时,对于部分接口的参数我们要进行判空或者格式校验来避免程序出现异常。那是我们一般都是使用if-else逐个对参数进行校验。这种方法按逻辑来说也是没有问题的,同样也能实现预期效果。但是,这样的代码从可读性以及美观程
阅读全文
摘要:public class TestTime extends TestCase { private static final Logger log = LoggerFactory.getLogger(TestLocalDate.class); public void testDate() { //创建
阅读全文
摘要:import java.time.Instant; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.ZoneId; import java.util.Date; public class Dat
阅读全文
摘要:@GetMapping("setLoggerLevel") public R setLogger(String level, HttpServletRequest request) { String packageName = "com.xxx.xxx.xxx"; LoggerContext log
阅读全文
摘要:在做单元测试时,代码覆盖率通常被拿来作为衡量测试好坏的指标,甚至,用代码覆盖率来考核测试任务完成情况。比如,代码覆盖率必须达到80%或90%。于是乎,测试人员费尽心思设计案例覆盖代码,用代码覆盖率来衡量,有利也有弊。本文我们就代码覆盖率展开讨论。 首先,让我们先来了解一下所谓的“代码覆盖率”。我找来
阅读全文
摘要:使用Stream流输出斐波那契数列: Stream.iterate(new int[]{0, 1}, t -> new int[]{t[1],t[0] + t[1]}) .limit(10) .map(t -> t[0]) .forEach(System.out::println); 使用IntSu
阅读全文
摘要:概述 A作为被引用的项目,目录结构如下: 可以看到A目录中只有基础的service类以及mybatis操作数据库的相关文件,service类中包含查询数据库的方法。 Tips: 项目A也可以是一个包含启动类和配置文件的Springboot项目,一般情况下只会将公共的方法和类提取打包成公共jar供其他
阅读全文
摘要:1. 勾股数 什么是勾股数(毕达哥拉斯三元数)呢?我们得回到从前。在一堂激动人心的数学课上,你了解到,古希腊数学家毕达哥拉斯发现了 某些三元数 (a, b, c) 满足公式 a * a + b * b = c * c ,其中 a 、 b 、 c 都是整数。例如,(3, 4, 5)就是一组有效的勾股数
阅读全文
摘要:Java 8中的常用函数式接口 函数式接口 函数描述符 原始类型特化 Predicate<T> T->boolean IntPredicate,LongPredicate, DoublePredicate Consumer<T> T->void IntConsumer,LongConsumer, D
阅读全文
摘要://无输入参数,返回T类型的一个结果。 new Supplier<String>() { @Override public String get() { return null; } }; Supplier<String> supplier = () -> "Test supplier"; supp
阅读全文
摘要:前言 元旦放假哪也没去一个人在家里闷得慌,突然间想写点东西打发打发时间,刚好想起前几天在公司听到一些同事在讨论线上数据库出现数据重复的问题,据说是因为接口与前端都没有做重复提交的约束导致的问题,因为我没有参与到相关业务的开发中,所以具体情况不了解,只是听他们在讨论过程中知道一点就是有可能是用户误操作
阅读全文