java
hellokitty136
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PDF文件内容读取
PDF文件内容读取 一、PDF表格读取 可以读取表格内容,以及表格坐标 1、maven依赖 <!-- openPdf 可以读取标签--> <dependency> <groupId>com.github.librepdf</groupId> <artifactId>openpdf</artifactId> <version>1.3.26原创 2022-01-24 17:07:11 · 3270 阅读 · 0 评论 -
java程序CPU占用过高问题排查
问题是这样的,将项目部署到服务器上后,系统告警提示服务器的cpu被沾满了,于是开始进行了排查。 TOP 首先查看系统资源占用信息,TOP看一下,然后按1 发现正在运行的JAVA项目CPU占用率很高,百分之200左右了,那么问题一定出在这个程序中 ps -mp pid -o THREAD,tid,time 再通过ps命令查看这个程序的线程信息,tid代码线程ID,time代表这个线程的已运行时间,第一行的TID为空不用管,应该是所有线程的cpu占用展示 由上面TOP可知进程I...原创 2020-10-30 10:49:36 · 664 阅读 · 0 评论 -
es查询AB,结果ABB匹配度更高问题
比如有个person_name字段,正常查询的时候按照_score排序,查询张建的时候,张建建的分值比张建的分值大,导致排序的时候张建建排在张建之前,但是按照常理来说,张建应该排在张建建之前,这就涉及到es的分词器以及分值计算问题了 解决方法是在person_name字段中设置一个子字段,不分词 "person_name": { "type": "text", "analyzer": "ik_max_word", "search_analyzer": "...原创 2020-08-12 11:27:39 · 1064 阅读 · 0 评论 -
ES按名称查询数据时,相同名称的数据评分不同问题
问题背景:我在做es查询人员信息的时候,按照人员姓名模糊查询,需要按照匹配度降序排序,并按照年龄降序排序 问题现象:相同名称的人员,比如马云,匹配度不同,导致展示的时候,年龄小的马云却排在了年龄大的马云之前,因为年龄小的马云评分高 问题原因:es索引是分片存储的,查询计算评分的时候,是每个分片单独计算的,所以会出现相同名称的人员评分不同的问题、 解决方案: 1、与产品沟通,当数据量足够大时,每个分片数据近似相同,则各个分片计算出来的评分会很相近 2、查询的时候增加查询条件(dfs_query_th原创 2020-08-12 10:56:20 · 1076 阅读 · 0 评论 -
PriorityQueue详解
JAVA中PriorityQueue详解 top k算法的经典实现是大顶堆和小顶堆,而在JAVA中可以用PriorityQueue实现小顶堆,话不多说,直接上代码 public static List<Integer> getTopMapNum(int[] arr, int k) { Queue<Integer> priorityQueue = new Pri...原创 2020-04-29 09:58:38 · 31952 阅读 · 4 评论 -
MyBatis提示找不到指定的Mapper映射文件
1、问题现象:ssm框架查询数据库时报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 2、问题原因:target目录下没有生成mapper.xml文件 3、解决方法:在pom文件中添加如下配置: <build> <resources> ...原创 2020-04-04 19:26:52 · 994 阅读 · 0 评论 -
athas使用经验
一.提升cmd权限为SYSTEM 在windows服务器中tomcat以SYSTEM权限启动,JDK自带工具(jmap、jstack、jhat)无法正常使用 使用PsExec64.exe提升cmd权限 1. 将PsExec64复制到服务器 2. 运行cmd命令: PsExec64.exe /s cmd 如果不成功,则执行下条命令 PsExec64.exe \\127.0.0.1 -u 服务器用户名...原创 2020-04-01 10:38:32 · 951 阅读 · 0 评论 -
阿里巴巴常用的15款开发工具
https://www.infoq.cn/article/1jV*BDxGwld6CWDVIt48原创 2019-08-08 10:46:59 · 265 阅读 · 0 评论 -
利用JDK工具定位问题
前置条件:在windows中使用cmd以system的形式启动,不要以管理员启动。如果是管理员启动请 使用PsExec工具更改,更改指令 PsExec /s cmd - 使用jps查看进程是否存在 - 使用jstat -gcutil pid 查看进程gc清空 - 使用jstack -l pid > stack_file 分析进程中线程dump - 使用jmap -du...转载 2019-07-04 20:28:57 · 208 阅读 · 0 评论 -
性能定位的一些工具
性能定位的一些工具 一.提升cmd权限为SYSTEM 在windows服务器中tomcat以SYSTEM权限启动,JDK自带工具(jmap、jstack、jhat)无法正常使用 使用PsExec64.exe提升cmd权限 1. 将PsExec64复制到服务器 2. 运行cmd命令: PsExec64.exe /s cmd 如果不成功,则执行下条命令 PsExec64.exe \\127.0.0...转载 2019-07-04 20:28:21 · 255 阅读 · 0 评论 -
将包含八进制数据的字符串转换为汉字字符串
public static String transfromOctalToString(String dataStr) { if (! dataStr.contains("\\")) { return dataStr; } //不属于八进制内容的字符 StringBuilder oldBuffer = new StringBuilder(); //属于八进制的内容,转成十六进制后缓存在这里 Str...转载 2019-03-26 19:20:53 · 2074 阅读 · 1 评论 -
hashmap的冲突解决方法及原理分析(注:java8中用了平衡树来提高冲突解决的性能)
在Java编程语言中,最基本的结构就是两种,一种是数组,一种是模拟指针(引用),所有的数据结构都可以用这两个基本结构构造,HashMap也一样。当程序试图将多个 key-value 放入 HashMap 中时,以如下代码片段为例:HashMap<String,Object> m=new HashMap<String,Object>(); m.put("a", "rrr1")...转载 2018-06-15 11:39:31 · 1098 阅读 · 0 评论 -
通过图片url获取图片数据
//此方法的作用是使下面的方法可以获取https的图片数据private static void trustAllHosts() { try { SSLContext sc = SSLContext.getInstance("TLS"); sc.init(null, xtmArray, new java.security.SecureRandom()); ...原创 2018-05-23 21:04:47 · 5294 阅读 · 0 评论
分享