Java
浊酒入清梦
作者很勤快,但是什么也没有留下...
展开
-
Spring-判断某个时间是否在CRON表达式触发时间里
使用Spring scheduling包中的org.springframework.scheduling.support.CronSequenceGenerator类,参考quartz(org.quartz.CronExpression#isSatisfiedBy)的实现逻辑:获取上一秒的下一个cron触发时间,判断是否和目标时间一样。原创 2022-10-10 19:50:17 · 791 阅读 · 0 评论 -
Spring boot-@Qualifier使用
Spring boot-@Qualifier使用原创 2022-09-07 11:48:24 · 1349 阅读 · 0 评论 -
orika-Java bean属性复制工具使用
orika-Java bean属性复制工具使用orika:Java bean属性复制工具,底层基于javassist生成字段属性映射的字节码,运行时动态加载执行字节码,性能上比cglib的BeanCopier稍差。Github地址:https://github.com/orika-mapper/orikamaven依赖引入orika-core包<dependency> <groupId>ma.glasnost.orika</groupId> &l原创 2021-11-21 19:28:38 · 442 阅读 · 0 评论 -
Annotation Tool(注解工具-IntelliJ IDEA 插件)
annotation-tool(IntelliJ IDEA 插件)GitHub源码Plugin地址IntelliJ Java注解插件,通过搜索注解属性值(自定义配置),快速跳转到对应注解位置。使用场景快速跳转到Spring Controller层的注解定义(@RestController, @GetMapping, @PostMapping等)RPC接口注解定义等功能通过搜索注解属性值,快速跳转到对应注解位置使用Ctrl+Alt+A -> 搜索参考RestfulToo原创 2021-06-19 11:11:29 · 1491 阅读 · 1 评论 -
Elasticsearch Java 入门教程之聚合常用功能 Demo (五)
Github源码:https://github.com/Mengzuozhu/es-demoAggregationService 聚合常用功能示例:最值、平均值、唯一值数目等package com.mzz.esdemo.service;import lombok.RequiredArgsConstructor;import lombok.SneakyThrows;import org.elasticsearch.action.search.SearchRequest;import org.el原创 2021-02-01 20:57:33 · 399 阅读 · 0 评论 -
Elasticsearch Java 入门教程之搜索常用功能 Demo (四)
Elasticsearch Java 入门教程之搜索常用功能 Demo (四)Github源码:https://github.com/Mengzuozhu/es-demoSearchService 搜索常用功能示例:matchAllQuery,termsQuery,rangeQuery,matchQuery等package com.mzz.esdemo.service;import lombok.RequiredArgsConstructor;import lombok.SneakyThrows原创 2021-02-01 20:56:11 · 436 阅读 · 0 评论 -
Elasticsearch Java 入门教程之文档管理常用功能 Demo (三)
Elasticsearch Java 入门教程之文档管理常用功能 Demo (三)Github源码:https://github.com/Mengzuozhu/es-demoDocumentService 文档管理常用功能示例:增删改查文档package com.mzz.esdemo.service;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import lombok.RequiredArgs原创 2021-02-01 20:55:24 · 369 阅读 · 0 评论 -
Elasticsearch Java 入门教程之索引管理常用功能 Demo (二)
Elasticsearch Java 入门教程之索引管理常用功能 Demo (二)Github源码:https://github.com/Mengzuozhu/es-demoIndexService 索引管理常用功能示例:配置(setting)、映射(mapping)、索引(index)管理、结构与数据复制等示例package com.mzz.esdemo.service;import com.alibaba.fastjson.JSONObject;import com.mzz.esdemo.c原创 2021-02-01 20:53:53 · 647 阅读 · 0 评论 -
Elasticsearch Java 入门教程 Demo (一)
Elasticsearch Java 入门教程 Demo (一)Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。 Lucene 可以说是当下最先进、高性能、全功能的搜索引擎库—无论是开源还是私有。Elasticsearch 也是使用 Java 编写的,它的内部使用 Lucene 做索引与搜索,但是它的目的是使全文检索变得简单, 通过隐藏 Lucene 的复杂性,取而代之的提供一套简单一致的 RESTful API。原创 2021-02-01 20:52:11 · 3104 阅读 · 4 评论 -
intellij-fluent-tool(IntelliJ IDEA 插件)
Fluent Formatter(IntelliJ 插件)GitHub源码Plugin地址功能格式化代码为Java流式风格一键生成链式调用的Java builder代码示例格式化前:IntStream.range(1, 2).map(i -> i + 1).count(); 流式风格格式化后:IntStream.range(1, 2) .map(i -> i + 1) .count();使用Fluent format选中需原创 2020-12-25 17:44:27 · 297 阅读 · 0 评论 -
Spring Boot上传文件异常:400 Required MultipartFile parameter ‘files‘ is not present
解决方法确认maven pom.xml中是否已添加以下spring-boot-starter-web依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>原创 2020-12-25 16:48:10 · 1873 阅读 · 2 评论 -
Spring Data JDBC入门使用Demo
Spring Data JDBC入门使用DemoSpring Data JDBC is a simple, limited, opinionated ORM.Spring Data JDBC:轻量级ORM框架,与Spring Data JPA 类似,但更轻量简单GitHub源码本项目Demo:Spring Data JDBC常用功能示例:PagingAndSortingRepository、NamedParameterJdbcTemplate、@Query、@Modifying等使用COL原创 2020-12-15 19:32:38 · 4765 阅读 · 12 评论 -
剑指Offer-题38(Java版):字符串的排列
参考自:《剑指Offer——名企面试官精讲典型编程题》题目:字符串的排列 输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。主要思路:把字符串看成两部分,第一部分是它的第一个字符,第二部分是后面的字符。第一步,求所有可能出现在第一个位置的字符,即把首字符逐个与后面的字符交换...原创 2018-05-13 18:06:16 · 229 阅读 · 0 评论 -
Java算法-归并排序
归并排序:分而治之,先自上而下递归拆分为左右两部分,并分别排序;再自下而上合并子数组的排序结果。import java.util.Arrays;/** * 归并排序 **/public class MergeSorter { public static void main(String[] args) { int[] data = {2, 3, 5, 4, 1, 2}; data = mergeSort(data); // [1, 2, 2原创 2020-06-11 14:22:59 · 134 阅读 · 0 评论 -
Java算法-二分查找
二分查找前提条件:数组有序public class BinarySearch { public static void main(String[] args) { int[] data = {0, 1, 2, 3, 4, 5}; int num = 5; // 5 System.out.println(binarySearch(data, num)); // 1 System.out.println(b原创 2020-06-10 14:30:12 · 127 阅读 · 0 评论 -
Java算法-快速排序
import java.util.Arrays;/** * 快速排序 * **/public class QuickSorter { public static void main(String[] args) { int[] data = {2, 3, 5, 4, 1, 2}; quickSort(data); // [1, 2, 2, 3, 4, 5] System.out.println(Arrays.toStrin原创 2020-06-10 14:25:06 · 146 阅读 · 0 评论 -
基于Flux的动态批量运行任务(异步版)
应用场景事先不确定数据的数目,但是需要并发分批处理数据(比如,查询数据库时,可边读取数据,边异步分批处理数据)。故实现基于Flux的动态批量运行器。代码实现Maven引用Flux <dependency> <groupId>io.projectreactor</groupId> <a...原创 2020-04-11 16:28:35 · 2132 阅读 · 0 评论 -
基于Flux的动态批量运行任务(阻塞版)
应用场景事先不确定数据的数目,但是需要并发分批处理数据(比如,查询数据库时,可边读取数据,边异步分批处理数据)。故实现基于Flux的动态批量运行器代码实现Maven引用Flux <dependency> <groupId>io.projectreactor</groupId> <ar...原创 2020-04-11 16:16:45 · 1999 阅读 · 0 评论 -
Java - CountDownLatch与CyclicBarrier的区别
Java - CountDownLatch与CyclicBarrier的区别类型定义例子超时例子CountDownLatch一个(或多个)线程等待其他线程(彼此独立)执行完成每个人(其他线程)下班打卡(countDown)后,各回各家(彼此独立);等人都走光后,保卫大爷(等待线程)才关门(await)保卫大爷(等待线程)到点就关门(await),即使还有人没下班...原创 2020-04-10 20:39:32 · 161 阅读 · 0 评论 -
Maven打包时,包含所有依赖的jar包
打包包含所有依赖的jar包,并生成javadoc文件和source文件pom.xml添加如下: <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> ...原创 2020-03-24 20:45:20 · 553 阅读 · 0 评论 -
Java 8 Collectors.toMap NullPointerException问题
报错代码public static <T, K, U> Map<K, U> toMap(Collection<T> collection, Function<? super T, ? extends K> keyMapper, Function<? sup...原创 2020-03-20 16:09:12 · 1991 阅读 · 0 评论 -
Elasticsearch-from size 分页-Java示例
from size 分页下文引用自:Elasticsearch 权威指南(中文版)–分页在集群系统中深度分页为了理解为什么深度分页是有问题的,让我们假设在一个有5个主分片的索引中搜索。当我们请求结果的第一页(结果1到10)时,每个分片产生自己最顶端10个结果然后返回它们给请求节点(requesting node),它再排序这所有的50个结果以选出顶端的10个结果。现在假设我们请求第100...原创 2020-03-14 16:47:00 · 2020 阅读 · 4 评论 -
Elasticsearch-Scroll分页-Java示例
ES Scroll分页查询Scroll分页与from-size分页的比较可参考:分页查询From&Size VS scrollScroll分页特点:模拟数据游标,可用于深分页查询大量数据场景基于历史快照和上一页的ScrollId,查询下一页;不适合实时搜索和跳页需求;import org.elasticsearch.action.search.SearchRequest...原创 2020-03-14 16:21:27 · 3209 阅读 · 0 评论 -
Elasticsearch-Search After分页-Java示例
参考:https://blog.csdn.net/andybegin/article/details/83864171es分页方式对比分页方式简述缺点form和size浅分页情况下,可以考虑使用;深度分页情况下,性能较差Scroll基于历史快照和上一页的scroll_id,查询下一页;滚屏翻页,滚动上下文代价高;不适合实时搜索和跳页需求Search A...原创 2020-02-29 17:21:46 · 10872 阅读 · 15 评论 -
Java-判断两个json字符串是否相等(忽略子元素顺序)
使用步骤:使用谷歌的Gson库,添加Maven引用: <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version&g...原创 2019-07-29 19:32:55 · 5793 阅读 · 0 评论