古老的榕树

Java 的孤岛现象

Java 是会自动内存回收的,程序员可以通过 System.gc() 来发出内存回收的指令, Jvm 收到此类的指令后,会及时尽可能把用完的对象进行回收。 另外有一种不是很正式的概念,就是孤岛,多个对象相互关联起来,为成为一个“岛”对象,比如: Dog dog1= new Dog(1); Dog dog2 = new Dog(2); Dog dog3 = new Dog(3); dog1=dag2; dog2=dag3; ... 阅读全文
发表于 2018-03-04 22:18 阅读(1106) 评论(0) 赞(0)

MyBatis 自定义通用 Mapper

Mybatis 提供自动生成 Mapper 的工具,看看生成的 Mapper,不是尽如人意,比如多表关联和返回的数据类型和传入参类型上。一直想写一个通用的 Mapper,传参类型是 Map,返回 Map 类型;大体分两种数据库操作 DDL 和 DML 操作,而且 DML 分别提供获取一条记录和多条,插入一条记录,批量插入记录,更新,删除一条记录。其中 DDL 是参考 ... 阅读全文
发表于 2017-04-08 18:08 阅读(5465) 评论(2) 赞(3)

JFinal 使用 HikariCP 数据库连接池

看了HikariCP 的源码,比较感兴趣,想在 JFinal 中集成这样的数据库连接池,发现并没有支持的插件,于是自己动手尝试写了 JFinal HikariCPPlugin 插件 ,得益于 JFinal 这么简洁的架构,几分钟时间就测试出炉了,肉眼测试,不严谨,如果有什么不妥的地方,希望网友补充斧正吧! 直接上代码,是程序员最喜欢干的事情: package com.jfi ... 阅读全文
发表于 2017-03-28 23:25 阅读(4068) 评论(0) 赞(2)

Java Map 按 key 升序排序

最近开发微信和支付宝的 服务端 支付,涉及到字典的排序和 url 参数转换成字典的操作,整理了一个工具类: import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.uti ... 阅读全文
发表于 2017-03-18 23:48 阅读(3603) 评论(0) 赞(1)

移动终端和 Java 服务端数据传输封装类

移动互联时代,常常碰到的是移动终端和服务端数据交互。终端把某种形式的数据传递给服务端,服务端收到数据后,需要根据双方约定的数据格式,取值再做处理。 传递的数据有哪些形式?一般分成三种形式 1:JSON 的流形式 2:纯粹的键值对形式 3:键值对和文件流并存的形式 其实 2-3 可以合并成一种形式来处理,以下将以 Java 服务端情况 ... 阅读全文
发表于 2017-03-05 17:55 阅读(1914) 评论(0) 赞(2)

分布式部署一点理解

一个服务器硬件资源足够强(比如 CPU 内存 SSD磁盘 配置都很优秀),也难免有瓶颈的时候,理论上说,一个单机服务器,并发量是有限的,以 Linux 服务器为例,即使 CPU 有无数个,核心顶配,内存同样很大,SSD磁盘很快,最终也会遇到连接数爆棚的时候,这时,以上的配置都没有用武之地了,因为 Linux 服务器是有最大连接数的,同一个时 ... 阅读全文
发表于 2016-09-17 13:11 阅读(1869) 评论(0) 赞(2)

Java 用一条语句搞定 Map 和 List 的定义和赋值

Java 里 Map 和 List 一般都先定义(初始化),然后赋值,最后使用的,有时候常量类里,想定义一个 Map 或 List 常量,上面说的做法就不适用了,有没有一个语句就同时搞定他们的定义和赋值呢? 这样做是可以的,请看代码: Map 的例子: @SuppressWarnings("serial") Map wallet_type_map = new HashMap () {{ put(1, "担保金(充值) ... 阅读全文
发表于 2016-04-18 17:33 阅读(2296) 评论(0) 赞(3)

Eclipse 常用的快捷键

查看资源: 1. Ctrl+Shift+R:打开资源 这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xml。美中不足的是这组快捷键并非在所有视图下都能用。 2. Ctrl+shift+T: 打开类型(Open type)。 如果你不是有意磨洋工,还是忘记通过源码 ... 阅读全文
发表于 2016-03-14 23:37 阅读(1861) 评论(0) 赞(1)

Java 中级开发笔记试题

Java 中级开发笔记试题,网上摘录,不提供大概,纯粹学习用途。 一、 填空题(40分) 1. 打印 b 的值为? String a = "abv"; String b = a; a = null; System.out.println(b); 2. 线程 Thread 有几种状态 3. Vetor 和 ArrayList 有什么区别? Enumeration 和 Iterator 有什么区别? 4. TCP 连接发生几次握手,断开连接呢? 5. Java.ut ... 阅读全文
发表于 2016-03-14 00:09 阅读(1830) 评论(0) 赞(0)

Java 的可变函数另类使用

Java 的可变函数的使用,以前局限于传人零散的参数,当然参数是不会局限数量的,这是可变参数函数的便捷性。如: package com.5_wow.utils; public class JavaTest { public static void main(String[] args) { System.out.format("传人可变参数,结果:%d \n", Add(1, 2, 3, 4, 5)); } public static Integer Add(Integer... args) { ... 阅读全文
发表于 2016-03-08 20:38 阅读(1812) 评论(0) 赞(0)

Java 8 在 Ubuntu 14.04 上的时间偏差

最近升级 Java 到 8;不幸遇到一个问题:时间比真实时间晚点了2个小时,折腾了很久,终于找到问题了。网络上有的说晚了 8 小时,我这里确实 2 小时;可能服务位置的差异。 问题的根源是Java 8 的默认时区的问题,需要给 jvm 显性指定 自己的时区,以下配置代码只适合 Linux 的: export JAVA_HOME=/usr/java/jdk1.8.0_72 export CLASS ... 阅读全文
发表于 2016-02-17 18:17 阅读(1694) 评论(0) 赞(0)

Ubuntu Debian 快速安装 Java 环境

Java 的安装很简单,总结说只有两步即可完成: 1. 官网下载对应版本的压缩文件 2. 系统上配置关联 闲话不说了,以 jdk 8u65 为例子,直接到官网 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下载压缩文件,因为系统是 Ubuntu 14.04 64位的版本,所以选择了 jdk-8u65-linux-x64.tar.gz 压缩 ... 阅读全文
发表于 2016-01-07 23:51 阅读(1730) 评论(0) 赞(0)

Tomcat 8.0 同一个项目部署多个服务

看标题有点奇怪,同一个项目为什么部署多个服务?实际场景是这样的,Java 开发了一个 reset api 接口项目,部署到一个资源相当富裕的服务器上,单单使用一个 tomcat 跑 Java 项目总会遇到瓶颈,打个比方说,县城里只有一条高速,进城的车子来来往往,遇到赶集,车子越来越多,结果只能排成长龙车头车尾缓缓而行。但如果富裕的县城拥有 ... 阅读全文
发表于 2016-01-06 23:51 阅读(3053) 评论(0) 赞(0)

Java 的异步线程片段使用

一个大操作,有多个子操作时,子操作有优先等级,和时间关系不太大,这时可以用上 Java 的异步线程来做了,特别有些不太重要又非常耗时的子操作,使用以下代码很适合: new Thread() { @Override public void run() { // TODO: 和时间关系不大,但又很耗时的子操作 } }.start(); 这种做法虽然很零碎,但很管用! ... 阅读全文
发表于 2016-01-03 12:09 阅读(1456) 评论(0) 赞(0)
第 1 页 共 1 页

关于作者

About Me

忘却理想,只为洒脱地活着!

文章数(90)

评论数(32)

访问数(164206)

最新评论