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 ... 阅读全文
移动终端和 Java 服务端数据传输封装类
移动互联时代,常常碰到的是移动终端和服务端数据交互。终端把某种形式的数据传递给服务端,服务端收到数据后,需要根据双方约定的数据格式,取值再做处理。
传递的数据有哪些形式?一般分成三种形式
1:JSON 的流形式
2:纯粹的键值对形式
3:键值对和文件流并存的形式
其实 2-3 可以合并成一种形式来处理,以下将以 Java 服务端情况 ... 阅读全文
Java 用一条语句搞定 Map 和 List 的定义和赋值
Java 里 Map 和 List 一般都先定义(初始化),然后赋值,最后使用的,有时候常量类里,想定义一个 Map 或 List 常量,上面说的做法就不适用了,有没有一个语句就同时搞定他们的定义和赋值呢?
这样做是可以的,请看代码:
Map 的例子:
@SuppressWarnings("serial")
Map
wallet_type_map = new HashMap
() {{
put(1, "担保金(充值) ... 阅读全文
Eclipse 常用的快捷键
查看资源:
1. Ctrl+Shift+R:打开资源
这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xml。美中不足的是这组快捷键并非在所有视图下都能用。
2. Ctrl+shift+T: 打开类型(Open type)。
如果你不是有意磨洋工,还是忘记通过源码 ... 阅读全文
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 ... 阅读全文
Java 定时器的几种用法
Java 定时器的几种用法,网络上转载的:
package com.lid;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class Test {
public static void main(String[] args) {
//timer1();
timer2();
//timer3();
//timer4();
}
// 第一种方法:设定指定任务task在指定时间tim ... 阅读全文
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 压缩 ... 阅读全文
Tomcat 8.0 同一个项目部署多个服务
看标题有点奇怪,同一个项目为什么部署多个服务?实际场景是这样的,Java 开发了一个 reset api 接口项目,部署到一个资源相当富裕的服务器上,单单使用一个 tomcat 跑 Java 项目总会遇到瓶颈,打个比方说,县城里只有一条高速,进城的车子来来往往,遇到赶集,车子越来越多,结果只能排成长龙车头车尾缓缓而行。但如果富裕的县城拥有 ... 阅读全文
Java 的异步线程片段使用
一个大操作,有多个子操作时,子操作有优先等级,和时间关系不太大,这时可以用上 Java 的异步线程来做了,特别有些不太重要又非常耗时的子操作,使用以下代码很适合:
new Thread() {
@Override
public void run() {
// TODO: 和时间关系不大,但又很耗时的子操作
}
}.start();
这种做法虽然很零碎,但很管用! ... 阅读全文
第 1 页,共 9 条记录,共 1 页