- 博客(12)
- 收藏
- 关注
原创 springmvc服务端,模拟HTTP请求返回404
public static String sendGet(String url, String param) { String result = ""; BufferedReader in = null; try { String urlNameString = url + "?" + param; ...
2016-09-26 15:32:49 711
原创 js时间读秒
function RemainTime() { var iDay,iHour,iMinute,iSecond; if (iTime >= 0) { iDay = parseInt(iTime/24/60/60/1000); iHour = parseInt(iTime /6...
2016-07-30 14:21:49 309
原创 阿里分布式事务设计思路
数据库不在一个实例上面,比如支付宝账户表和余额宝账户表显然不会在同一个数据库实例上,他们往往分布在不同的物理节点上,这个时候一定要避免使用本地事务。在跨库操作中,如果使用本地事务,往往会使本地事务失效,或者造成庞大的服务器开销,引发服务器死掉的极端影响。 本地事务:一般情况下,一个庞大的数据库表需要按照拆分字段进行分离,拆分成多个数据库实例,这个分离也是有规则的。比如按照用户US...
2016-07-26 16:28:15 187
原创 银行金钱计算专用工具类
public final class MoneyUtils { /** * 金额0.00。 */ public static final BigDecimal ZERO = BigDecimal.valueOf(0.00); /** * 金额100.00。 */ public static final...
2016-07-19 17:42:43 334
原创 P2P利息计算工具
/** * 计算器。 * * <p> * 用于计算投资相关的积分,本金利息等。 * </p> * * */public final class Calculator { /** * 计算一次性还款按天计息的利息。 * * <p> * OOBD=...
2016-07-18 15:09:31 257
原创 Java BigDecimal详解
1.引言 借用《Effactive Java》这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供 较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确,这时候 BigDecimal就派上大用场啦。 2...
2016-07-18 14:10:55 326
原创 阿里redis缓存
/************************************************************************* * HONGLING CAPITAL CONFIDENTIAL AND PROPRIETARY * * COPYRIGHT (C) HONGLING CAPITAL CORP...
2016-07-15 15:30:54 174
原创 利用redis缓存锁记录,数据库锁行
public ResultBean issue(String originID, final Long userID, final String fromIp) { try { if (!cacheSessionStorage.lock(ISSUING_LOCK + userID)) { return ResultBean.failed(R...
2016-07-15 15:30:38 669
原创 Java并发编程:线程池的使用
在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务? 在Java中可以通过线程池来达到这...
2016-04-08 15:25:00 86
原创 利用消息系统,避免分布式事物
一、本地事务 以支付宝转账余额宝为例,假设有 •支付宝账户表:A(id,userId,amount) •余额宝账户表:B(id,userId,amount) •用户的userId=1; 从支付宝转账1万块钱到余额宝的动作分为两步: •1)支付宝表扣除1万:update A set amount=amount-10000 where userId=1; •2)余额宝表增加1万:update B ...
2016-03-22 11:47:41 99
原创 PreparedStatement使用like的方法
sql = " and a.name like '%' || ? || '%'";value.add(name);或者 sql = " and a.name like ? ";value.add("%"+name+"%");
2016-01-28 14:10:58 431
原创 SynchronizedMap和ConcurrentHashMap的深入分析
SynchronizedMap和ConcurrentHashMap的深入分析 (2010-04-03 14:13:59)转载▼标签: it 分类: 数据编程在开始之前,先介绍下Map是什么?javadoc中对Map的解释如下:An object that maps keys to values . A map cannot contain duplicate k...
2016-01-26 17:27:44 83
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人