- 博客(454)
- 资源 (26)
- 收藏
- 关注

原创 面向对象死了吗?
本来打算写一篇介绍OOP的由来,优缺点和适用范围等的理论性的文章。但是读过OOP大师和反对者的一些言论之后,这种想法就没有了。我们从小就受到一种非黑即白的价值理念的教导,事物要嘛是好的,否则就是坏的。世界上没有一种放之四海而皆准原理和方法,只要你掌握了,就可以解决所有的问题。也是我们所说的万能钥匙,等同于现在电视购物里面包治百病的万能神药。相信做程序的都是理性的,对这种神药大多数人一笑了之,并不会
2013-04-21 14:51:24
10394

原创 HTTPS的七个误解
误解七:HTTPS无法缓存许多人以为,出于安全考虑,浏览器不会在本地保存HTTPS缓存。实际上,只要在HTTP头中使用特定命令,HTTPS是可以缓存的。微软的IE项目经理Eric Lawrence写道:"说来也许令人震惊,只要HTTP头允许这样做,所有版本的IE都缓存HTTPS内容。比如,如果头命令是Cache-Control:max-age=600,那么这个网页就将被IE缓存10分钟
2013-03-31 22:48:33
8502
1

原创 未来的智能设备
科幻作家和科幻电影一直都有关于未来场景描述,一直我认为都是遥不可及的梦想。但是从iphone和android从2007流行开来,至今也只有5年的发展期,但是,2012年,玛雅日历的最后一年,在到处充斥着世界末日来临的言论中,我发现未来的智能社会已经触手可及了。我预测未来的设备都会更智能,更懂你。例如,早上上班,带着你的智能设备,到你的车库。汽车知道你要怎么去公司,会给你推荐几条合适的不拥堵的路
2012-08-21 15:31:27
8834

原创 分析腾讯微博登录过程
一,腾讯网站登陆过程分析 腾讯网站包括qq.com为主域名的网站,包括t.qq.com,www.qq.com以及腾讯数不清的各个子域名,因为腾讯使用的sso登陆,所以登陆流程对于各个子域名都是一样的。下面我就以腾讯微博为例子来介绍一下: 第一步: 当用户在浏览器输入:http://t.qq.com/login.php 的时候,浏览器下载页面,执行js检查用户是否qq登陆,如
2012-05-02 18:51:50
13761
9

原创 Sina微博 SSO登陆过程分析
Sina SSO登陆过程分析近日研究了Sina CAS的登陆过程,发现其实sina的sso实现了yale-CAS并且添加一丁点新的东西,基本认证过程交互流程仍然未变。其独创的一点是实现了Ajax单点登陆,算是比较牛。实现原理是iframe+ javaScript回调函数。一,初级SSO初级的SSO,就是在同一个顶级域名下,通过种入顶级域名的Cookie,来实现统一登陆。例如:单
2011-05-23 19:04:00
20419
12
原创 JavaDeveloper,是时候删除你的JRE了!
2014年Java8发布,不知不觉已过去5年了。支持模块化的Java 9 2017年发布后,Java发布进入了快车道,计划六个月一个版本,一年二个版本,小步快跑。版本号大有要超越chrome的趋势。随后在2018年发布了Java 10和11,今年三月发布了Java12.特别注意的Java 11是一个LTS版本,如果企业采用最新版本的话,最好使用这个版本的JDK。但是企业应用的jdk升级总是滞...
2019-05-16 18:10:54
1162
原创 添加LFS无线支持
添加LFS无线支持1.安装wgetwget 需要openssl,openssl依赖Kerberos首先安装kerberos,http://www.linuxfromscratch.org/blfs/view/svn/postlfs/mitkrb.html安装openssl,http://www.linuxfromscratch.org/blfs/view/svn/postlfs/o
2014-03-21 01:26:25
7372
转载 Java DNS cache 时效设置备忘
Java DNS cache 时效设置备忘我们知道java的InetAddress会通过自身的cache缓存dns解析结果。缓存的策略主要有两种,一种是缓存正确解析后的IP地址,还有一种是缓存解析失败后的状态。这两种策略的时效配置都在 %JRE%\lib\security\java.security 这个文件里。TTL=Time to Livenetworkaddress.ca
2013-08-28 22:03:59
13772
原创 ScheduledExecutorFactoryBean忽略异常继续执行
程序中有一个定时任务,每10分钟把满足条件的任务从一个表迁移到另一张表,程序启动的时候数据库异常了一段时间,之后数据库恢复了。但是通过观察,发现此定时任务挂掉了,再也没有重启起来。解决此问题的办法是要在任务线程的run方法中中捕获runtime异常,如果使用ScheduledExecutorFactoryBean,只要配置continueScheduledExecutionAfterException属性为true即可
2013-08-18 13:37:02
12616
转载 Gist 介绍
转载自:http://www.worldhello.net/gotgithub/06-side-projects/gist.htmlGist在GitHub网站的导航条上就有Gist子网站的链接: https://gist.github.com/ ,在本节我们就揭开其面纱。图6-1:GitHub上的Gist链接Gist作为一个粘贴数据的工具,就像 Pastie 网站[
2013-07-16 22:53:39
41324
转载 程序员如何保持优秀
程序员如何保持优秀小范围的选择一些有用技术,透彻的学习它们,拥抱它们。然后不断的扩展这个范围。理解各种数据结构的优点和缺点,包括它们在内存中和在硬盘上的各自表现。理解各种算法的优点和缺点。了解你的工作领域。关上电脑,去做你的用户们在做的事。有准备,有愿望,有能力在任何时候投入到多种技术层面中。你必须知道表象下的技术原理。在“各个技术层
2013-05-25 14:23:20
7500
原创 读《数据挖掘技术(第三版)》-应用于市场营销,销售与客户关系管理 有感
<!--p {margin-bottom:0.08in}-->读《数据挖掘技术(第三版)》-应用于市场营销,销售与客户关系管理 有感这本书不是纯讲数据挖掘理论的书,从本书的副标题你大概也能猜得到。对于像我这样数据挖掘领域的门外汉,读起这本书也没有多大的困难。这本书不是纯讲技术的书,但是其对技术理论的理解还是很有帮助。作者无论介绍数据挖掘的概念和技术,
2013-05-16 23:30:40
11747
1
原创 云计算
云 Nicholas Carr在《IT不再重要》中细致地描述了电力的发展史:刚开始因为直流电传输距离短的原因,发电机成为需要电力的企业和个人的选择,但是由于能长距离传输的交流电技术的不断成熟,使得英萨尔(Insull)关于电厂的想法成为现实,之后由于电厂的规模效益不断增大,使得电力的价格也随之降低,而且使用起来更方便,最后,“电厂”模式成为主流。仔细想来,IT技术的发展和电
2013-05-04 13:21:06
8113
转载 京杭大运河的地形特征及各段水流流向
京杭大运河的地形特征及各段水流流向 京杭运河地处我国黄、淮、海冲积平原东部边缘地带及长江三角洲的里下河地区、太湖流域两大碟形洼地之内。沿运地势具有三起三伏的特点,起伏之差一般在20~40m之间。 北京至天津段,距离虽短,却高差悬殊,本段系京杭运河的第一降落段。通惠河河底平均高度约30m,(该高度指高出废黄零点高度),通县河底高约20m,天津市海河河底高度则为-3m,北京至天
2013-01-31 08:14:40
19116
原创 Resin 3.x的日志切换问题
最近Resin服务器总是在晚上0点宕机,观察日志无反应,少则几分钟多则几十分钟,便会自行恢复。dump出栈信息,发现是resin的rollback日志的问题。当前resin版本为3.1.1 ,目前服务器上resin.conf的日志配置一般是:《stdout -log path=”log/stdout.log” timestamp=”[%Y-%m-%d %H:%M:%S] ” r
2012-08-29 11:20:26
9534
原创 由服务器宕机而思--再说字符编码
近段时间,Web服务器就因为一个字符乱码问题导致正则表达式匹配循环的bug(此正则表达式执行时间大约两分钟,cpu 100%)导致服务器Cpu使用率过高而引起服务器无响应宕机。其实引起问题的代码很简单,String newStr = new String (oldStr.getBytes(), "utf-8"); (新程序员缩写)oldStr是编码为utf-8的字符串,执行此语句之后new
2012-08-28 08:41:33
8270
原创 Common Lisp Loop 宏实例
Common Lisp Loop 宏教程Loop 宏是Common lisp操作符中最有价值和文档最少的操作符之一。它的价值体现在它比lisp的其他构造,例如maping 操作符和递归操作符,更加强大,紧凑和具有更强的可读性。并且对于那些用传统语言工作的程序员来说,Loop宏使用的编程方式会更容易理解。这个教程将提供给你如何使用Loop宏的例子。Loop宏和其他大多数的Lisp表达式不
2012-08-17 17:24:33
11361
原创 Lisp函数apply和funcall的比较
CommonLisp提供了两个函数来通过函数对象来调用函数:Apply和Funcall函数。 得到函数对象的方法是#‘,其实就是FUNCTION函数。例如: (foo 1 2 3) == (funcall #'foo 1 2 3)apply和funcall第一个参数都是一个函数对象。这个对象或者是函数本身,例如#’+, 或者是一个符号,这个符号有一个函数在它的函数区域,例如 ‘+ 。
2012-08-06 11:41:06
12123
原创 Lisp映射函数MAP,MAPC, MAPCAR, MAPCAN, MAPL, MAPLIST, MAPCON对比
介绍之前有必要先介绍一个Lisp的集合数据类型,这样才能更容易的理解这几个的函数的区别和联系。任何语言对集合的分类可以分为两种类型,一种是以一个整数为索引的类数组类型 和 一个可以用key来访问值的表类型。在不同的语言中,前者一般叫做数组(array),列表(list)和元组(tuples)。后者一般叫做哈希表(hash table),关联数组 (associative arrays), Map
2012-08-03 18:17:11
6681
原创 HttpClient3.1 未releaseConnection导致应用服务器宕机
报警短信突然一条接一条的出现了,某台服务器宕机了。赶紧ssh到问题服务器,jstack把栈信息导出分析。此时服务器cpu正常,但是resin无响应。初步判断是线程死锁或者线程堵死的问题。首先我们来分析jstack栈信息。首先应该查找Waiting状态的线程,发现有1000多个线程,我晕。。分析其中的一个,部分栈信息如下,不过足以说明问题了:"http--8005-1040$78
2012-08-01 16:12:44
12559
原创 Maven无法正常下载快照Snapshots jar
一个工程依赖于另一个项目的一个jar 的snapshot版本,但是maven编译的时候发现无法下载xxx-snapshot.jar 。 到maven本地库目录查看,发现只有文件.lastUpdated 。而并没有jar文件。出了什么问题了? ummsSnaps https://team/nexus/content/repositories/snapshots
2012-08-01 13:54:30
27055
原创 Java如何将两个数组的元素按顺序合并
日记里面的老文章了,贴csdn里面方便查看。使用java的ArrayList 的时候,如何将两个数组按顺序合并。考虑问题的角度不同,解决办法就不一样。例如ArrayList a 和b ,合并之后为 a1 a2 b1 b21,以a为主数组的话,解决办法很简单。 for循环遍历。和 a.addAll(b)2, 如果以b为主数组的话,问题就
2012-07-30 18:06:59
8207
原创 Lisp的作用域和生存期(scope and extent in lisp)
在lisp语言中,scope和extent的概念非常常见。作用域和生存期说的是对象或者是结构在程序的什么时候被引用。作用域指的是空间或者文本域。生存期指的是引用的时间间隔。这两个概念是紧密联系的概念。作用域关注空间而生存期关注于时间。让我们看一个简单的例子:(defun copy-cell (x) (cons (car x) (cdr x)))变量x的作用域是defun 形
2012-07-29 15:27:53
4108
原创 Lisp真的是屠龙之技吗?
Lisp真的是屠龙之技吗?对Lisp的学习有一段时间了,Lisp这门50多年的语言在天朝这样一个浮躁的环境里面的确生存空间极小,除了有名的伞哥现在从事Common Lisp的开发工作之外,其他没有听说过几个。51job和智联以Lisp为关键字搜素,相关职位不到1页,几乎全部是AutoCAD Lisp开发,或者要求应聘者熟悉的一门函数语言里面出现,并且还是和perl/erlang并列的形式出现,要求
2012-07-27 17:36:16
51446
5
原创 Lisp Quote 和Backquote分析
对于Lisp初学者来说,最不容易理解的就是Lisp强大的宏。在宏定义中你看到的最多的字符可能是就是引用和反引用。引用和反引用构成了Lisp的基石,所以我先就引用和反引用做一个介绍。宏就留在以后介绍了。引用 (quote)引用Quote其实是Lisp 25个特殊操作符之一,它接受一个单一表达式作为其参数,并且简单的返回它。不经过求值过程。例如下面表达式(quote (+ 2 3)
2012-07-14 18:27:39
5056
2
翻译 ASDF(Lisp项目构建利器)使用说明
这篇文档的目的 这篇文档的目的是简要介绍ASDF的使用。它不是介绍ASDF高深的技巧和设计。一个系统定义文件只是定义了源文件的依赖和编译加载顺序。如果B.lisp文件含有被A.lisp使用的定义的代码,那么A.lisp依赖B.lisp。在大多数情况下,解决依赖问题相当的繁琐,所以写一个小的脚本通常可以工作。但是,学习使用正确的工具会让你节省大量的时间。在这个小教程里面,我们将集中关注一个简
2012-07-08 20:38:00
7595
原创 Lisp项目构建和包管理工具
如果用Common Lisp(以下简称CL)编写大型程序的话,肯定会遇到如下两个问题:1,多个源文件如何组织,编译和依赖。2,如何引入其他的Lisp软件包。这就不得不引入ASDF和Quicklisp两个工具了。项目构建工具-ASDF ASDF是Another System Definition Facility的缩写。这个名字够个性(程序员都知道为什么)。ASDF
2012-07-06 14:50:58
6063
转载 Lisp的本质(The Nature of Lisp)
Lisp的本质(The Nature of Lisp) 作者 Slava Akhmechet 译者 Alec Jang 出处: http://www.defmacro.org/ramblings/lisp.html简介最初
2012-07-05 15:48:43
2805
转载 编程珠玑番外篇-D. 高级语言怎么来的
编程珠玑番外篇-D. 高级语言怎么来的-1作者:徐宥原文:http://blog.youxu.info/2009/05/13/hpl/终于放暑假了, 有心情来八卦了. 我主要想八卦一下高级语言的设计思想和各种范式的来龙去脉, 也就是回答这个问题: 编程语言为什么会发生成现在这个样子哩? 这里面的奥妙又在哪里哩? 我尝试着把这个系列的八卦写下去, 包括虚拟机的设计, 线程的设计, 栈和寄
2012-07-01 17:11:19
5707
原创 Lisp in a box 安装指南
什么是Lispbox?lispbox 是Common Lisp的集成开发环境。实际是Lispbox只是组合配置了Emacs编辑器,SLIME(Emacs的高级Lisp 交互模式)和Quicklisp 库管理工具和CCL Lisp编译器。这些工具组合在一起给你了你所期望的一个ide能给你的所用的功能集合,甚至更多。Lispbox使你可以迅速和简单的投入使用。
2012-06-24 22:15:24
15361
2
原创 cetia4 sdk 下载地址
早在09年的时候接触到REST,于是便找到了cetia4 这个实现rest的java框架,当时对它做了一些研究,没想到现在整个项目无人维护了,https://cetia4.dev.java.net/已经找不到该项目了,不过好在https://cetia4.dev.java.net/仍然还有介绍, 参考文章:http://blog.youkuaiyun.com/xiaojianpitt/article/deta
2012-06-21 10:18:50
1396
原创 ubuntu下commonlisp配置
<!--@page {margin:0.79in}h2 {margin-bottom:0.08in}h2.western {font-family:"Liberation Sans",sans-serif; font-size:14pt; font-style:italic}h2.cjk {font-family:"宋体"; font-size:14pt
2012-06-21 09:00:49
4976
原创 一次HashMap多线程安全引起的事故
事故分析最近一次web工程上线,上线大概半个小时,出现了报警,16核的服务器的cpu使用了1123%,程序出异常了。Cpu利用率过高一般是因为出现了出现了死循环,导致部分线程一直运行。占用cpu时间。使用jstack工具dump出问题的那台服务器的栈信息。死循环的话,首先查找RUNNABLE的线程,找到问题代码如下:java.lang.Thread.State:RUNNABLE
2012-06-13 15:45:31
25738
2
原创 java.util.Timer 定时问题
java.util.Timer 定时问题相信大家都很熟悉java.util.Timer类,java类库中提供的简单的执行定时任务的类,使用也非常简单。自定义任务扩展抽象类TimeTask,实现抽象方法void run(),之后使用Timer对象的schedule( TimerTask task,long delay,long period )方法即可。直观的观察此函数,意思是让任务延迟d
2012-06-13 14:32:08
11403
原创 腾讯微博开放平台开发吐槽
腾讯微博开放平台开发吐槽 使用腾讯微博开放平台的api开发有段时间了,对于开发中遇到的问题不得不总结一下,前车之鉴,供后继者参考。 关于用户注册腾讯的东西几乎每一个产品都和QQ绑定,如果使用邮箱注册一个微博账号之后,在你注册成功之后登陆,系统会发送一封私信告诉你,你的这个微博账号绑定的qq号码,问题就出在这里。我邮箱注册了一个账号,过几天我忘记了密码,需要找回,当时我也没有记着
2012-06-07 16:21:45
5550
4
原创 CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期
CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期1,主频主频 = 时钟频率,它是指CPU内部晶振的频率,常用单位为MHz,它反映了CPU的基本工作节拍;时钟频率又称主频,它是指CPU内部晶振的频率,常用单位为MHz,它反映了CPU的基本工作节拍;2,时钟周期 时钟周期 t =1/ f; 主频的倒数3,机器周期 机器周期 = m*t ;
2012-05-29 17:12:03
141105
hsdis-amd64.dll
2019-12-03
网狐棋牌数据库整理文件
2019-06-26
C#入门经典(第7版)带目录 高清完整.pdf版下载
2019-06-25
软件工程项目开发最全文档模板+国家标准+若干实例(附目录)
2019-06-25
基于Qt WebChannel实现QT与HTML页面通信
2019-06-24
各种最小二乘法汇总(算例及MATLAB程序)
2019-06-23
bootstrap做登录注册页面带验证
2019-06-23
MbrFix.exe
2019-06-22
C#语音通信开源框架,语音处理,杂音过滤。
2019-06-22
Architecture & Organizational Patterns
2018-04-26
丹麦乐高(LEGO) NXT 编程语言NXC介绍
2011-04-24
Everything Is Byte
2010-01-11
百度mp3Searcher
2009-07-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人