11 2018 档案
摘要:1 Java引用介绍 Java从1.2版本开始引入了4种引用,这4种引用的级别由高到低依次为: 强引用 > 软引用 > 弱引用 > 虚引用 ⑴强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出O
阅读全文
摘要:如果你还在为灵活的生成各种复杂报表犯愁,在为常用报表工具消耗大量内存担心。我推荐一个很好用的开源的Java报表生成工具。 本工具封装了强大的POI。但与POI不同的是,它可以用很简洁的代码生成复查的,各种功能的报表。 官网地址:http://jxls.sourceforge.net/index.ht
阅读全文
摘要:我们系统中经常有耗费时间长的任务,但客户端往往需要马上得到回应。这时我们就可以如下步骤实现: 1、客户端发起请求执行任务(选定条件,下载报表); 2、首先将任务ID及开始时间,起始状态记录到数据库表中; 3、另起一个后台线程去执行这个耗时任务(比如生成报表); 4、线程执行成功或失败状态记录到数据库
阅读全文
摘要:对 IntelliJ IDEA 内存采用不同的设置方案,会对 IDE 的速度和响应能力产生不同的影响。 Don’t be a Scrooge and give your IDE some more memory 不要做守财奴,给IDE多留点内存吧。 昨天,大家就是否自定义 IntelliJ IDEA
阅读全文
摘要:我们公司性质是新零售,公司也有专门的框架组。这群大牛自己开发了一整套分布式微服务框架。我们也在使用这套框架,有很多心得体会。 该框架既Dapeng也!开源github地址:https://github.com/dapeng-soa Dapeng-soa 是一个轻量级、高性能的微服务框架,构建在Net
阅读全文
摘要:在处理数据库连接或者输入输出流等场景时,我们经常需要写一些非常繁琐又枯燥乏味的代码来关闭数据库连接或输入输出流。 例如数据库操作: def update(sql: String)(conn: Connection): Int = { var statement: Statement = null t
阅读全文
摘要:很多时候应用服务启动或关闭会做一些预加载(比如缓存,定时任务启动等)或收尾处理工作(比如程序失败记录等) 1. 首先看下Spring框架服务启动加载操作实现,直接上代码 2. 退出服务及几种退出方法 如下图: 对于强制关闭的几种情况,系统关机,操作系统会通知JVM进程关闭并等待,一旦等待超时,系统会
阅读全文
摘要:Try-with-resources Try-with-resources是Java7中一个新的异常处理机制,它能够很容易地关闭在try-catch语句块中使用的资源。 利用Try-Catch-Finally管理资源(旧的代码风格) 在Java7以前,程序中使用的资源需要被明确地关闭,这个体验有点繁
阅读全文
摘要:最近实现一个工具,Main函数会有很多参数,而且参数类型不同,为了统一解析,网上找到三方工具类Args4j,轻松搞定。 代码实例如下: 定义解析类: 是不是就看起来很直观了!
阅读全文
摘要:最近有个任务:根据查询SQL直接导出报表 实现关键是,怎么根据sql查询的数据动态生成对象列表,想到Cglib动态代理实现 废话少说,上代码: 定义动态生成Java Bean类:
阅读全文
摘要:JDK 对线程组类注释: A thread group represents a set of threads. In addition, a thread group can also include other thread groups. The thread groups form a tr
阅读全文
摘要:1.监控程序运行堆栈 ......//do something 2. 计时及运行次数; 定义计时:
阅读全文