
Java
文章平均质量分 54
_细水长流
这个作者很懒,什么都没留下…
展开
-
线程池RejectedExecutionHandler从FutureTask获取原始任务对象(Runnable、Thread等)
需求线程池拒绝策略中,需要将拒绝的任务进行特殊处理(如:任务处理状态标记为失败),故需获取到原始任务对象(称为oriWork)。拒绝策略回调中传参Runnable r为FutureTask对象(无法将该对象强转为oriWork类型),该对象的callable字段存储了oriWork,只是该对象被Executors的内部类RunnableAdapter封装着。思路通过反射先获取FutureTask.callable字段,然后通过反射获取Executors$RunnableAdapter中包装的原始任务原创 2020-08-11 11:06:17 · 1346 阅读 · 1 评论 -
线程池—ScheduledThreadPoolExecutor 存在OOM问题
原因ScheduledThreadPoolExecutor继承自ThreadPoolExecutor,而前者构造方法调用的是后者的构造方法,而且maximumPoolSize值为Integer.MAX_VALUE,这会导致缓冲队列中存在过多任务对象没有被处理并回收内存。demo@Testpublic void main() { int coreThreadCount = 1; ThreadFactory threadFactory = new ThreadFactoryBuilde原创 2020-07-16 18:29:58 · 3453 阅读 · 0 评论 -
集合Stream流操作工具类
前言Java1.8发布的流操作支持Lambda表达式,省去for、foreach等架子,有效提升编码效率。但重复的拼装出相同的流操作表达式,又出现了原先for、foreach存在的架子问题,故而,本文将给出一些笔者日常工作中经常使用到的流操作工具方法,希望能减少不必要的重复代码,将宝贵的时间精力放在功能、产品、生活上。代码StreamUtils:package com.sqlu.too...原创 2020-01-06 19:09:44 · 1245 阅读 · 0 评论 -
POI操作工具类
前言经常有需求导出excel表格,本文将搭建excel的简单模型,并使用POI实现一些常用的功能。工具地址:Github地址看下效果示例代码:package com.sqlu.learn.excel;import com.sqlu.learn.tools.excel.poi.PoiUtil;import com.sqlu.learn.tools.excel.pojo.*;im...原创 2020-01-03 17:14:33 · 976 阅读 · 0 评论 -
SpringBoot 接口返回值类型转换报错 No converter found for return value of type
SpringBoot 接口返回值类型转换报错 No converter found for return value of type参考资料:No converter found for return value of type: class java.util.LinkedHashMap解决方法:/** * @author stonelu * @date 2019-09-27 18:1...原创 2019-10-29 15:04:42 · 748 阅读 · 0 评论 -
一次正式环境服务器CPU持续99%问题跟踪与解决
巨人的肩膀:Java线上应用故障排查之一:高CPU占用【转】事件回顾现象:从服务器控制台查看(未添加报警机制),发现服务器CPU持续8小时一直处于99%的使用状态处理:先查看当前哪些进程占用资源较高:进程按占用资源递减排序:输入top,然后输入p发现PID为8164的java进程占用CPU达到99.8%查看PID进程中耗时的线程:ps -mp PID -o THR...原创 2019-07-05 14:49:04 · 1548 阅读 · 0 评论 -
Java原生窗体(JFrame/JPanel)显示图片(支持OpenCV)
为便于比对OpenCV处理前后图片效果,需要将原始图片、处理后的图片、OpenCV矩阵图像显示出来。借鉴于网上的资料,在此处给出满足上述需求的工具类。支持:拖拽自适应图片大小,通过文件路径、Mat、Image显示图片参考资料:https://stackoverflow.com/questions/13871307/jframe-not-showing-a-picturehttps:...原创 2019-04-30 17:46:59 · 4266 阅读 · 0 评论 -
maven构建报错:无效的目标发行版: 1.x
报错信息:Fatal error compiling: 无效的目标发行版: 1.x -> [Help 1]原因:根据网上资料检查了一遍:确实已经安装jdk,且版本正确,cmd中也能查看到jdk版本信息,maven也正常安装了。换了个jdk包,好使了!!!!!! ,可能是之前的jdk包不正确。点击此下载正确的jdk1.8包...原创 2018-11-17 15:36:21 · 955 阅读 · 0 评论 -
Springboot集成Mybatis报找不到mapper
报错:nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 前缀包名.dao.AppMapper.list 原因:网上有其他原因点,下面是这次遇到的原因:maven打包时,没有将application.yml或properties、...原创 2018-10-15 17:42:41 · 3954 阅读 · 0 评论 -
James之——添加自定义处理过程
//————————————————————修改记录:2018.06.25 初次发布//————————————————————注:文中James是基于2.3.2开发的Why? James提供了信件的收发功能,但是没有提供收发记录的存储,这样不利于对信件和数据的流向进行跟踪,存在风险。 本文将介绍如何通过添加自定义的处理过程,将James收发信件的记录都存储到一张数据库表中(关于数据量...原创 2018-06-25 02:46:56 · 749 阅读 · 0 评论 -
系统配置JAVA_HOME修改后未生效
解决方法:如果确认已经修改了系统配置中的JAVA_HOME为新值,WIN+R -> 输入cmd并回车即可,此时 java -version 应该就能看到新值了。注意:不能在原cmd窗口中start"新窗口",这样是不能获取JAVA_HOME配置的。...原创 2018-04-25 10:19:14 · 6021 阅读 · 0 评论 -
javamail 收件人/发件人 "乱码"解析
在使用Javamail接收邮件时,获取到的发件人、收件人可能存在"乱码",例如:=?gb18030?B?MTA2NzU3NzA1MQ==?= <1017566033111@qq.com>原因: 其实这个并不是乱码,而是经过 字符编码、传输编码后的用户名,通过下面的方法能获取其对应的用户名:Message[] messages = folder.getMessages();Messag...原创 2018-04-19 16:22:48 · 4358 阅读 · 1 评论 -
poi 滚动条移动到最左侧
资料: java - Apache POI set selected cell after xls document opens - Stack Overflow场景: 使用java poi 生成excel,打开后发现滚动条显示在最右侧,需要将其调整到最左侧。解决方法: HSSFSheet sheet = wb.getSheetAt(0); sheet.setActive(...原创 2018-03-19 09:59:17 · 1369 阅读 · 0 评论 -
相关资料链接
[数据库]:MSSQL Merge的用法MySQL查看SQL语句执行效率 [css、js]:CSS中的样式覆盖原则 [C#]:C#枚举类型获取Description注释内容 [java]:Log4j 使用手册Spring注解SSO单点登录 [应用]:SVN文件上感叹号、加号、问号等图标的原因如何让Eclips...原创 2017-02-22 13:24:45 · 567 阅读 · 0 评论 -
java poi给excel单元格添加下拉菜单(不限定选项个数)
0、参考资料:是否为隐藏sheet: http://blog.youkuaiyun.com/mj158518/article/details/53931247C#解决方案: http://www.bubuko.com/infodetail-1667595.html1、依赖jar包: org.apache.poi poi 3.9 org.a原创 2018-01-21 18:17:02 · 11987 阅读 · 1 评论