随笔分类 -  JAVA-杂项

j2ee
摘要:运行结果: 阅读全文
posted @ 2018-02-28 10:59 自行车上的程序员 阅读(484) 评论(0) 推荐(0) 编辑
摘要:在JDK版本为1.8的情况运行下面的代码,会发现很神奇的情况(见运行结果)。 看如下代码: 运行结果如下: 0.070.080.070.070.070.070.08 10.0710.0810.0710.0710.0710.0710.08 100.08100.08100.07100.07100.071 阅读全文
posted @ 2018-02-02 16:34 自行车上的程序员 阅读(3142) 评论(0) 推荐(0) 编辑
摘要:在后台管理系统中经常会有需要记录用户操作日志的需求,其中需要最好能记录用户修改了哪些字段的数据(变更前,变更后),这个时候就需要抽取一个工具的类来处理这件事。 20180105进行优化升级:1、增加对基本类型的集合的对比。2、优化反射的缓存。3、增加dto+集合的混合对比方法。 结果样例: 工具类: 阅读全文
posted @ 2017-12-22 11:04 自行车上的程序员 阅读(4087) 评论(2) 推荐(1) 编辑
摘要:在实现配置中心的多种方案中,有基于JDK7+的WatchService方法,其在单机应用中还是挺有实践的意义的。 代码如下: 运行示例结果类似如下: 阅读全文
posted @ 2017-09-06 22:01 自行车上的程序员 阅读(5883) 评论(6) 推荐(0) 编辑
摘要:实体类: 帮助类: 单元测试类: 测试结果: 阅读全文
posted @ 2017-03-29 15:49 自行车上的程序员 阅读(16941) 评论(0) 推荐(3) 编辑
摘要:输出结果: 阅读全文
posted @ 2017-03-14 10:23 自行车上的程序员 阅读(357) 评论(2) 推荐(0) 编辑
摘要:江南白衣的公众号的介绍文章:http://mp.weixin.qq.com/s/6JUo1vmUa-7SuDH6yIxKeQ github的地址:https://github.com/springside/springside4/wiki/SpringSide-Utils-Overview mave 阅读全文
posted @ 2017-03-07 20:19 自行车上的程序员 阅读(559) 评论(0) 推荐(0) 编辑
摘要:作为一个被问的很多的一个面试题:java中==和equals有什么区别? 网上普遍的回答都是:==比较的是内存地址,equals比较的是值。 其实这种回答是很不标准的,稍微标准一点的回答应该JDK自带的一些类对equals的实现各不同,例如 Object对象的equals的定义是这样的: 所以在Ob 阅读全文
posted @ 2017-02-12 19:01 自行车上的程序员 阅读(12247) 评论(0) 推荐(3) 编辑
摘要:1 2 3 4 ​ 5 6 7 8 ​ 9 10 11 12 13 14 15 16 17 DEBUG 18 19 ... 阅读全文
posted @ 2017-02-09 09:45 自行车上的程序员 阅读(1833) 评论(0) 推荐(0) 编辑
摘要:要点: 1、浅度拷贝可以不实现Cloneable接口(自动使用Object.clone)或者不重写Cloneable的clone方法。 2、要被深度拷贝的类必须实现Cloneable接口并重写clone方法。 3、如果需要能被深度拷贝则需要在父一级对所有的非基本类型的子元素调用clone方法。 看例 阅读全文
posted @ 2016-12-13 14:40 自行车上的程序员 阅读(413) 评论(0) 推荐(0) 编辑
摘要:需要处理的图片: 1.png(空白区域为透明) 2.png 处理后的结果图片:result.png 代码如下: 阅读全文
posted @ 2016-12-12 15:53 自行车上的程序员 阅读(6174) 评论(0) 推荐(0) 编辑
摘要:传统的两私有一公开(私有构造方法、私有静态实例(懒实例化/直接实例化)、公开的静态获取方法)涉及线程安全问题(即使有多重检查锁也可以通过反射破坏单例), 目前最为安全的实现单例的方法是通过内部静态enum的方法来实现,因为JVM会保证enum不能被反射并且构造器方法只执行一次。 实现方法如下: 测试 阅读全文
posted @ 2016-12-09 10:59 自行车上的程序员 阅读(29313) 评论(2) 推荐(3) 编辑
摘要:从张开涛blog学习后整理:http://jinnianshilongnian.iteye.com/blog/2018398 图片原图比较大,建议将图片在新的选项卡打开后100%大小浏览 在权限校验中RolePermissionResolver接口用于将角色所包含的权限全部解析出来(生成Permis 阅读全文
posted @ 2016-11-25 15:16 自行车上的程序员 阅读(533) 评论(0) 推荐(0) 编辑
摘要:我们在实际工作中有很多场景需要DB等地方获取到一个FTL的代码片段并执行它,所有有了如下带缓存的实现方式 POM: <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version> 阅读全文
posted @ 2016-11-24 11:49 自行车上的程序员 阅读(3026) 评论(0) 推荐(0) 编辑
摘要:从张开涛blog学习后整理:http://jinnianshilongnian.iteye.com/blog/2018398 上图中的类和接口都可以继承和实现来个性化自己的实现. 其中重点看一下ModularRealmAuthenticator的源码中3个比较重要的方法。 配置多个Realm时如果使 阅读全文
posted @ 2016-11-24 11:19 自行车上的程序员 阅读(614) 评论(0) 推荐(0) 编辑
摘要:引入上述的shiro的POM SimpleHash类共有6个常用的hash算法的子实现类: 下面以常用的MD5摘要算法为例,使用Md5Hash类来进行测试类编写 Md5Hash的方法目录如下: 例子: 输出结果: 阅读全文
posted @ 2016-11-22 14:43 自行车上的程序员 阅读(5614) 评论(0) 推荐(0) 编辑
摘要:先来一个简单的例子来感受一下 外部接口类:TestService.java 正常流程的JUnit单元测试方法类似如下: 但是目前该接口的实现类(服务)目前是调用不通的,或者是压根还没做,但是你又不想因为这个接口而影响自己的代码的测试,就可以使用Mockito来模拟接口的调用。 首先引入mockito 阅读全文
posted @ 2016-11-08 22:28 自行车上的程序员 阅读(1361) 评论(0) 推荐(0) 编辑
摘要:bin版:https://kenai.com/projects/btrace/downloads/directory/releases 源码:https://github.com/btraceio/btrace 如果要在eclipse中编写btrace脚本文件,需要引用:btrace-bin-1.3 阅读全文
posted @ 2016-11-02 15:30 自行车上的程序员 阅读(320) 评论(0) 推荐(0) 编辑
摘要:http://web.jobbole.com/87968/ 虽然是JS篇,但其他编程语言(例如java)实现起来是差不多的。 阅读全文
posted @ 2016-09-25 13:12 自行车上的程序员 阅读(230) 评论(0) 推荐(0) 编辑
摘要:运行结果: 针对这个原理可以解决页面上有固定宽度的显示区域,但显示区域的内容超长并且有中英文混合,需要进行截断显示(其实也可以采用css处理,但是有些地方css处理会有兼容性的问题)。 特写如下帮助类: 运行结果如下: 阅读全文
posted @ 2016-08-25 13:57 自行车上的程序员 阅读(834) 评论(0) 推荐(0) 编辑