日积月累
文章平均质量分 80
stationxp
出了三本书,两本第一作者,一本第二作者
展开
-
Git的设计太帅了!
Git是Linux之父Linus的又一力作,设计做得太帅了,不愧是世界级的产品,让人顶礼膜拜! 有以下几个特点:功能设计紧凑、克制;分层设计,层次间协议清爽;世界级的对象命名;有效隔离关注点;简洁有力的状态的管理;浑然天成的性能、分布式、并发考量。原创 2015-02-02 05:08:35 · 2857 阅读 · 0 评论 -
Duboo文档阅读-用户指南(2)
作者:刘海龙 微博:[http://weibo.com/liuhailong2008] 博客:[http://blog.csdn.net/stationxp] 2015-02-17 天园小区 计划是这样的:先把Duboo所有文档看一遍;然后启动起来,玩一把;然后看源码汲取营养;最后再把文档过一遍。 用户指南部分篇幅较长,本次涉及:协议参考、注册中心参考、Teln原创 2015-02-17 07:35:36 · 3698 阅读 · 0 评论 -
非安全传输协议前提下,Open API安全协议设计
本文考虑:在不使用安全传输协议的前提下,Open API调用的安全问题。包括:角色定义、处理流程和代码设计。原创 2015-02-13 07:06:05 · 1790 阅读 · 0 评论 -
oAuth 2.0协议解析
解析oAuth 2.0协议,考虑交互过程和实现的要点。原创 2015-02-13 12:59:39 · 983 阅读 · 0 评论 -
RFC 6750不记名令牌
RFC 6750是RFC 6749的补充协议,着重说明了oAuth 2.0中令牌的使用方法、消息格式和安全考量。原创 2015-02-14 21:57:25 · 2531 阅读 · 0 评论 -
oAuth 2.0存储设计
oAuth 2.0实现中,为了实现协议功能,实现完整的、实用的授权解决方案,需要考虑数据存储的格式。比如:token定义为获取数据的钥匙,认证信息需要保存在数据库或其他形式更高效的存储中。注册、授权申请等业务数据也需要数据存储支撑。原创 2015-02-15 00:59:10 · 2832 阅读 · 0 评论 -
oAuth 2.0测试
测试过程展示了oAuth 2.0关键流程、交互方式和关键参数。下一步工作体现了oAuth 2.0框架的开发思路。原创 2015-02-15 06:00:46 · 10265 阅读 · 1 评论 -
从客户端,通过HttpClient发送二进制数据到服务器端
在实现第三方接口时,通过二进制数据通讯,可以更高效、更灵活、更稳定。从客户端发起请求的代码如下所示。 protected static byte[] remoteInvoke(byte[] data) throws SomeException { byte[] ret = null; PostMethod filePos原创 2015-04-25 12:43:01 · 8776 阅读 · 0 评论 -
北京工商新网上登记平台上线,实现 零见面、全流程电子化
北京工商实现“零见面”办照http://paper.people.com.cn/rmrb/html/2015-05/20/nw.D110000renmrb_20150520_3-10.htm北京工商新版登记注册系统上线 企业“零见面”办照http://money.163.com/15/0519/18/AQ0G25ND00254TI5.html北京市工商注册实现全程电原创 2015-05-20 09:01:14 · 1801 阅读 · 0 评论 -
文本内容分析和智能反馈(1)-分析设计
1、业务背景某业务内容为短文本,5字或200字左右,针对某个专题,有附属属性。 提交人为非专业用户。提交后,专家进行审核,某几个专家针对某个行政区划。对审核不通过的内容,专家会给出修改建议。业务量较大,单次审核周期一般在1~3个工作日。如果能够提高一次通过率,将直接提高系统效率。对于5字左右短文本,如果能够智能审核,减轻专家工作量,也将对系统整体效率带来促进。2、业务分析有几件事情可以做:分析历原创 2015-05-28 05:34:39 · 2247 阅读 · 0 评论 -
文本内容分析和智能反馈(2)- 数据预处理和按纬度统计
书接上文,考虑4个核心功能的实现,先考虑:数据预处理和按纬度统计。1、数据预处理1.1、基本原则首先,考虑数据的格式。业务数据是保存在关系型数据库中的。数据分析的部分,我们将使用Weka,虽然Weka习惯ARFF格式,为了实现数据分析和提取的自动化,我们将通过Weka的JDBC接口为其提供数据。这样,可以使用ETL工具或者通过程序代码执行SQL实现数据提取和格式转换。 在开发阶段,我们基本上可以将原创 2015-05-29 07:54:45 · 2043 阅读 · 2 评论 -
Java 报表工具
1、报表工具基本功能报表工具一般提供一下功能:支持多种数据源,而且数据源可配置。支持脚本式的样式定义,一般是基于XML的,可灵活修改,一般提供样式编辑器。一般支持基于打印的样式定义,支持报表头尾、页面头尾、分组等概念。将数据源和样式定义,输入到报表引擎,可输出为多种格式,包括PDF、EXCEL等。2、报表工具的使用从报表工具的基本功能来看,使用报表工具,核心是两个,一个是数据源的定义,一个是原创 2015-05-26 06:08:05 · 2144 阅读 · 0 评论 -
json-schema-core(liuhailong翻译)
JSON Schema: 核心定义和术语(json-schema-core)互联网工程任务组(IETF) 互联网草案 预期状态:Informational 文档到期时间:2013年8月3日 作者:fge. Galiegue、K. Zyp, Ed. SitePen (美国加州某地)、G. Court 文档提交时间:2013年1月30日 翻译:liuhailong,http://blog.c翻译 2016-03-12 06:29:19 · 1412 阅读 · 0 评论 -
Zuul Filter的小坑
Zuul是Spring Cloud技术栈里对外网关的实现。所有的服务从这里对外暴露,鉴权、加密、压缩、缓存等等等等,各类需求可以在这里一次编码、彻底解决,方便极了。但是这里又是所有服务的入口,一夫当关、万夫莫开,丁点错误会被无限放大,需要慎之又慎。昨天小踩了一下,发现了几个小坑,先记下来,待时机成熟时在一块儿总结。1. 不要对response直接操作!!response的输出流不是你想写就能写,想...原创 2018-06-12 13:36:59 · 3843 阅读 · 0 评论 -
一次线程泄露问题排查笔记
问题表现应用启动几个小时后,死掉,临死前报错: org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: unable to create new native thread目前服务重启了,可以预见几...原创 2018-06-12 13:37:52 · 8207 阅读 · 0 评论 -
一、分布式事务的应用场景
现在提起分布式事务中的“事务”,和传统的数据库事务中的“事务”严格意义上已经不是完全等同的了。设计一个分布式事务框架前,首先要明确问题到定义。分析具体应用场景,包括以下三个:A、服务内跨数据库的事务;B、跨内部服务的事务;C、跨外部服务的事务。其中划分内部和外部的标准是:内部服务我们可以控制其实现,修改配置或代码;外部服务指的是第三方的,只能约定通信的方式和具体协议,具体代码实现在控制范围之外。具...原创 2018-06-12 13:38:35 · 11566 阅读 · 0 评论 -
定时任务假死问题排查
问题表现某定时任务过一段时间死掉,不再输出任务日志。分析估计不是线程被干死,一般是活儿一直干不完,在等资源啥的。过程jstack 2476|grep Scheduler -A 30发现大部分线程时起时停,但其中一个一直Running。"myScheduler-9" #29 prio=5 os_prio=0 tid=0x00007fc52cdd3000 nid=0xa9a runnable [0x0...原创 2018-06-13 19:18:56 · 12317 阅读 · 4 评论 -
Java程序员的JavaScript学习笔记(8——jQuery选择器)
这是笔记的第8篇,聊聊jQuery的选择器。原创 2014-10-26 15:11:06 · 1736 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(4——闭包/getter/setter)
这是笔记的第4篇,聊聊闭包/getter/setter,看看JavaScript中的变量作用域和实现封装的方法。原创 2014-10-17 03:40:37 · 2609 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(14——扩展jQuery UI)
完结篇。自定义jquery ui 组件。原创 2014-10-28 08:35:13 · 1744 阅读 · 0 评论 -
如何保护敏感信息不被篡改
系统中的敏感信息,如账户余额,需要给予特殊保护,不能被篡改。如何从程序角度给予保证?原创 2014-09-18 05:15:44 · 3156 阅读 · 0 评论 -
[程序员入行必备]CSS样式之优先级
使用CSS控制页面样式时,经常出现设定的样式被“覆盖”,不能生效的情况。浏览器是依据怎样的优先次序判断CSS样式的优先级的呢?我们分以下几方面探讨:样式的来源;选择器的特殊性;层叠原则。原创 2014-08-21 21:11:33 · 1268 阅读 · 0 评论 -
[Spring MVC] @ResponseBody返回结果乱码问题的解决
发现问题在Controller类方法上加@ResponseBody,直接返回字符串,结果乱码。如下所示:MockHttpServletResponse: Status = 200 Error message = null Headers = {Content-Type=[text/plain;charset=IS原创 2014-08-23 08:04:40 · 7483 阅读 · 0 评论 -
应对Deadline,时间怎么安排?
项目过程中,每项任务都是有时间要求的,一般体现为“截止时间”,即Deadline。如何安排时间,才能在Deadline之前完成任务呢?为了按时而且保质保量完成任务,我推荐的“有效实践”包括以下几条:原创 2014-10-08 13:33:47 · 2760 阅读 · 1 评论 -
Java程序员的JavaScript学习笔记(12——jQuery-扩展选择器)
这是笔记的第12篇,本篇我们尝试扩展jQuery选择器,同时这也是一个jQuery源码解读的过程。原创 2014-10-27 05:50:37 · 2125 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(3——this/call/apply)
这是笔记的第3篇,聊聊JavaScript中的this,还有两种调用函数的特殊方式:call 和 apply。原创 2014-10-16 12:49:44 · 2260 阅读 · 1 评论 -
Java程序员的JavaScript学习笔记(10—— jQuery-在“类”层面扩展)
这是笔记的第10篇,我们考虑如何从实用角度,从“类”的角度对家Query进行扩展。jQuery是一个紧凑的框架,专注解决最核心的问题,没有追求大而全,所有扩展机制对jQuery来说,至关重要。JavaScript以函数为基础,今天我们试图基于jQuery构建一个针对自己项目的函数库,每个函数实现特定的功能,同时对这些函数进行有效的组织。原创 2014-10-27 01:46:07 · 2128 阅读 · 0 评论 -
微信公共开发者文档 阅读笔记
微信公共平台开发,新手日志。原创 2014-10-27 21:28:39 · 2751 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(7——jQuery基本机制)
这是笔记的第7篇,聊聊jQuery基本机制,学习的同时,我们试图实现一个缩略版本的jQuery,我们叫他jQ。原创 2014-10-22 22:20:41 · 1655 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(9—— jQuery工具方法)
这是笔记的第9篇,从jQuery源码的角度,聊聊jQuery的工具方法。原创 2014-10-26 20:39:49 · 1770 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(13—— jQuery UI)
EasyUI是jQuery的一个常用扩展,解决页面组件的问题,实现了可拖拽组件、功能更丰富的下拉框、日期组件、表格组件等。今天我们尝试,通过分析Easyui的模块化设计、接口风格、实现细节,来探索我们自己的jQuery扩展之道 和 页面组件化之道。原创 2014-10-28 06:05:11 · 2359 阅读 · 1 评论 -
Java程序员的JavaScript学习笔记(汇总目录)
JavaScript面向对象特性分析,JavaScript高手必经之路。jQuery源码级解析。jQuery EasyUI源码级解析。原创 2014-10-28 08:51:06 · 156 阅读 · 1 评论 -
微信公共账号学习笔记 _ 感想 爪机码字
昨晚看了下微信公共账号的资料,做了个小东西,以下是第一时间的感受。估计好多看法是错的,逐渐纠正吧。原创 2014-10-27 21:16:58 · 1282 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(2——属性复制和继承)
如何在JavaScript中实现对象定义,属性复制和继承。原创 2014-10-16 00:36:38 · 2440 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(6——面向对象模拟)
这是笔记的第6篇,对前面5篇做一个总结,聊聊JavaScript在面向大型复杂任务时候,如何有效组织程序结构,如何实现代码清晰可读,如何实现开闭原则。原创 2014-10-19 19:44:26 · 2070 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(11——jQuery-在“对象”层面扩展)
这是笔记的第11篇,我们将对$()返回的对象功能进行扩展,以丰富其属性和功能,满足我们的需要。在第9篇(http://blog.csdn.net/stationxp/article/details/40480185)我们了解到jQuery.extend和jQuery.fn.extend其实定义相同。调用者不同,才导致了两个函数功能的差别(详细机制请参见本笔记第3篇)。上一篇我们研究了jQuery.extend,本篇重点研究jQuery.fn.extend。原创 2014-10-27 04:07:05 · 1804 阅读 · 0 评论 -
Java程序员的JavaScript学习笔记(5——prototype和Object内置方法)
这是笔记的第5篇,聊聊prototype、内置的Object对象和Object对象的属性和方法。原创 2014-10-18 06:04:37 · 3031 阅读 · 0 评论 -
REST当道,NO MVC
B/S开发经历了几个时代,现在已经是后MVC时期了。MVC体现了分层和解耦合的概念,从功能和理念上都做出过巨大贡献,使Java B/S开发在面对大型项目时从容不迫,说成是上个十年Java B/S开发领域的核心技术也不为过。目前,大家对MVC运用的十分纯熟,对MVC中各个组件也能各得其所,得体的使用。MVC是把好锤子,但现在时代变了,手里拿着锤子,就更要清醒,确认是否每个问题都是钉子。原创 2014-08-20 04:54:22 · 1599 阅读 · 11 评论