JAVA高级
文章平均质量分 73
tino.tang
share for myself
展开
-
open commons通用开发工具包
open commonsAdd maven dependency<dependency> <groupId>io.github.tangtongda</groupId> <artifactId>open-commons</artifactId> <version>1.0.0.RELEASE</version></dependency>ExcelUtilReadExcel原创 2021-07-23 15:35:02 · 226 阅读 · 0 评论 -
apache commons-lang3字符串替换方法StrSubstitutor过期
先来看看StrSubstitutor的用法 Map valuesMap = HashMap(); valuesMap.put("animal", "quick brown fox"); valuesMap.put("target", "lazy dog"); String templateString = "The ${animal} jumps over the ${target}."; StrSubstitutor sub = new StrSubstitutor(valuesMap); S原创 2020-05-11 10:02:54 · 5074 阅读 · 1 评论 -
java springboot 自动文档生成工具JApi集成
实例官方文档https://japidocs.agilestudio.cn/#/源码https://github.com/YeDaxia/JApiDocs为什么选择JApi(优点)完全开源,有需求的可以二次开发,并且开发难度不高,这意味着你可以花比较少量的时间为自己的项目进行量身定制。由于其基于java doc注释的特性,基本上做到了无代码侵入,不会像swagger一样,为了展示文档写很多swagger配置和注解。apidoc 界面美观,文档看着舒服。支持html,导出支持markdo原创 2020-08-31 16:39:29 · 1832 阅读 · 0 评论 -
elasticsearch匹配关键词高亮+中文分词(包含数组字段处理)
开始前准备springdata elastic接入方法https://blog.csdn.net/qq_36289377/article/details/105843733对应版本elasticsearch 6.8spring-boot 2.2.2.RELEASEspring-boot-starter-data-elasticsearch 2.2.2.RELEASE本片文章创作时,es最新版为7.2,可以兼容,6.0以下版本需要根据版本改部分代码,主要是低版本的几个Hits类不同,其他差别不大原创 2020-07-27 12:00:18 · 6174 阅读 · 0 评论 -
springdata elasticsearch详细接入方法
版本spingboot 2.2.2.RELEASE引入 spring-boot-starter-data-elasticsearch 可以不指定版本,工程会自动拉取springboot对应的版本依赖elasticsearch server 6.8.4如果指定使用版本,要注意兼容性问题,防止不兼容导致出现千奇百怪的错误spring data 官方版本对照表,如果是新项目建议选用s...原创 2020-04-29 18:53:04 · 5418 阅读 · 6 评论 -
JVM结构与工作原理
JVM主要由四个部分组成:类加载器:将class文件加载进jvm执行引擎:执行class文件中的字节码指令本地库接口:调用本地方法库内存区/运行时数据区:方法区:又称作non-heap非堆,主要用来存储类结构,包括常量池、运行时常量池、静态变量、构造函数等。堆:主要存储java的实例、对象,也是GC发生的主要区域。虚拟机栈:java栈,操作变量、操作栈、方法的返回值,一个方法从...原创 2019-04-25 18:17:55 · 430 阅读 · 0 评论 -
FST(Finite-State Transducer) 原理
参考依据:Weighted Finite-State Transducer Algorithms An Overview这是一篇由纽约计算机和数学教授,同时也是全球人工智能超级大咖Mehryar Mohri在美国最大电信公司AT &amp;amp;amp;amp;amp;amp;amp;amp; T 工作期间撰写的论文《加权有限状态转换器算法概述》,原文专业术语和数学概念太多,非数学和计算机科学专业的很难读懂,但是身为一个IT民工也不需要我们能完全读...原创 2018-10-17 15:16:51 · 20297 阅读 · 2 评论 -
Elasticsearch底层原理基本解析
基础概念:Elasticsearch是一个基于Apache Lucene全文搜索引擎开发的分布式的 RESTful 风格的的实时搜索与数据分析引擎,它比Lucene更强大,并且是开源的。官方网站:https://www.elastic.co/cn/Elasticsearch是面向文档型数据库,一条数据就是一个文档,和数据结构mongoDB类似,文档序列化之后是JSON格式,例如一条用...原创 2018-10-10 15:48:23 · 5095 阅读 · 3 评论 -
JPA 多表左连接多条件分页查询
业务场景:主表:订单表,与客户表、产品表、物流表存在一对一关系,映射字段为id,现需要根据订单编号、订单日期、客户名称、客户编号、产品名称、产品编号、快递单号查询该笔订单,需要支持模糊查询和分页。Order实体类中的需要进行一对一关系映射: @OneToOne @JoinColumn(name = "express_id") private Express...原创 2018-06-21 16:17:42 · 12059 阅读 · 10 评论 -
AWS S3使用Demo
public class AwsClient { static AmazonS3 s3; static TransferManager tx; private static String AWS_ACCESS_KEY = "AWS_ACCESS_KEY"; private static String AWS_SECRET_KE转载 2018-01-22 13:03:39 · 3559 阅读 · 3 评论 -
UTC时间格式(2018-01-22T09:12:43.083Z)格式化方法
package jp.misumi.wos.components.service.hp;import java.text.SimpleDateFormat;import java.util.Date;public class Test { public static void main(String[] args) { SimpleDateFormat sdf1 = new Si原创 2018-01-23 13:54:32 · 69287 阅读 · 0 评论 -
JAVA内存模型(堆和栈工作原理,String详解)
JVM主要管理两种类型内存:堆和非堆。1.堆是运行时数据区域,所有类实例和数组的内存均从此处分配,这些对象通过new、newarray、 anewarray和multianewarray等指令建立。堆由垃圾收集器来回收内存,它的优势是可以动态分配内存大小,缺点就是存取较慢。2.非堆就是堆之外的内存,它包括:1)方法区2)JVM内部处理或优化所需的内存(如JITCompiler原创 2017-07-03 13:04:35 · 1864 阅读 · 0 评论