自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 收藏
  • 关注

原创 重构与Intellij Idea初探

是时候讨论这个Refactor利器了,最初看到这个重构的过程是从ThoughtWorks郑大晔校开始的,只是之前对于Java的另外一个编辑器Eclipse的坏感。。这些在目前已经不是很重要了,试试这个公司里面应用广泛的编辑器。开发过程开发的流程大致就是这样子的,测试先行算是推荐的。编写测试->功能代码->修改测试->重构上次在和buddy聊天的时候,才知道测试在功能简单的时候是

2015-03-16 14:45:17 429

原创 我的 2014 年度总结

开篇的话转眼间一年又过去了,在新年的第一天,我按照惯例总结一下去年干了些什么,看看一年下来自己有哪些成长。这篇总结最开始发布在 Ruby China 上,我转过来作为我的新博客的第一篇,希望 2015 年有个好的开端。2014 年总的来说比较平淡,没什么大的波折,年初计划的事情,不出意外有一些没完成,好在同时也干了一些意料之外的事情,并且在我看来更有帮助,也算没白白浪费时间了。按计划完

2015-03-16 14:41:32 364

原创 redis的一些优化

之前记录在公司内部的wiki上的,现在把这些经验分享出来,当然这些优化,都已经在框架的底层做掉了,使用框架时,并不需要特别在意hset/hsetnx和hmset的性能差别在注册用户的时候,之前我们大量使用hsetnx,可以保证用户数据的唯一性,防止多次写入但经过测试,这种方式,相比hmset性能差别巨大,所以采取了下面的方式存储数据,某些情况采用ziplist节省空

2015-02-04 16:32:50 423

原创 怎样降低iOS代码耦合性

综述凡是维护过中型项目的iOS工程师都应该有过类似的体验:ViewController代码繁重、功能复杂、维护困难,整个工程寥寥几个ViewController就完成了整个项目的开发。每个控制器中都囊括了所有的页面布局、委托代理、网络请求、数据库操作和核心功能,这样的代码往往问题重重,修改起来牵一发而动全身,着实令人头疼。为了应对这一系列的问题,苹果公司的工程师给我们提供了很多选择去更好的

2015-01-24 02:17:36 691

原创 个推使用中可能碰到的问题和详细解决方案

1.clientid如何获取?答:1.通过广播获取,看下客户端接入文档获取透传消息下的receriver的示例,其中有get_clientid的action。查看连接 http://docs.getui.com/pages/viewpage.action?pageId=5904692.通过方法获取,有getClientid的方法可以调用,但该方法的前提是个推服务端已经生成了client

2015-01-24 02:01:36 1367

原创 iOS on Rails- up and running

作为一个 iOS 开发,相信很多人和我一样想给自己的App快速的建立后端Server, 把各种高负荷的计算工作都扔到后端,这样 App 的开发就可以重点放在提高用户体验上。 而作为一个 Ruby 开发者,我们同样希望自己优雅的 Ruby 代码不仅仅作为 Web App 的后端,更希望自己也能够给自己的后端写移动 App,在地铁上无聊的时候玩玩。 所以我对自己的定义是“一个喜欢Ruby的iOS开发者

2015-01-24 01:17:24 419

原创 用Spark实现日志解析

当下数据矿工们谈论最多的,莫过于这「星火」了。Spark这名字,总让我联想起高中背过的单词书,从而印象不佳,哈哈。今天也凑了把热闹,把一个日志解析的模块改成Spark实现,算是体验之旅吧。刚开始我是用看起来很像Swift的Scala写的:SparkLogExtract.scala然后我希望为这个程序增加参数传入的功能,然后我谷歌大法了,然后就没有然后了。总体感觉Scala是一个不够

2015-01-10 00:26:57 402

原创 Oracle undo 表空间使用情况分析

查看 undo 表空间使用情况ACTIVE :还有活动事务在使用 undo。这部分空间属于暂时不能使用的空间。EXPIRED :考虑到 undo retention 之后,这些 undo 已经过期了。这部分空间是可以重用的。UNEXPIRED :考虑 undo retention 之后,这些 undo 还没有过期,但是已经没有活动事务在使用了。在超过 undo retention 之后

2015-01-10 00:18:41 696

原创 Query to find profile options values in Oracle EBS

以下脚本可以用来在EBS中查找特定profile option的设置,sql中,查找的profile option为并发%OPP%sqlSELECT FPOT.USER_PROFILE_OPTION_NAME, DECODE(FPOV.LEVEL_ID, 10001, 'Site', 10

2015-01-07 18:23:24 312

原创 进制转换

导言进制转换是一道经典的题,基本概念不多说,像下面这样12(10进制) C(16进制) 1100(2进制) 14(8进制)注意进制不同时,数值还是一样大的。因此C(16进制)只是12(10进制)的另一种表示,而不是另一个数值。其实我的意思是,表示10进制外的其他进制时都应该用字符串。因此一般有两种情况1. 10进制整数转换为其他进制字符串2. 其他进制字符串转换为

2015-01-07 18:13:17 310 1

原创 攻城狮都应当知道的——编译器的工作过程

源码要运行,必须先转成二进制的机器码。这是编译器的任务。比如,下面这段源码(假定文件名叫做test.c)。#include int main(void){ fputs("Hello, world!\n", stdout); return 0;}要先用编译器处理一下,才能运行。$ gcc test.c$ ./a.outHello, world!

2015-01-07 18:02:16 320

原创 在Laravel外使用Eloquent(二)- 分页问题

在上一篇《在Laravel外使用Eloquent(一)》 中我们演示了如何引入Eloquent以及基本使用,但是如果细心的朋友肯定会发现,当你在使用paginate(15)来分页的时候是会报错的。因为我们没有依赖laravel的pagination模块。但是引入那个模块同时它内部依赖了symfony的http-foundation模块,意味着为了一个分页功能我们要装好多东西。于是我就实现了一个比较

2015-01-07 17:50:44 3633

原创 使用Gitlab一键安装包后的日常备份恢复与迁移

Gitlab 创建备份使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份:gitlab-rake gitlab:backup:create使用以上命令会在/var/opt/gitlab/backups目录下创建一个名称类似为1393513186_gitlab_backup.tar的压缩包, 这个压缩包就

2015-01-07 17:37:51 358

原创 Windows IIS 站点安全配置

木马年年有,今年特别多一直以来都在用 windows server 作为网站运行环境,以前经常被木马困扰,在这里总结一下 windows server 的安全配置,木马的防护。首先分析下木马的来源1 通过网站上传比如,网站有用户上传头像的功能,这样的功能在设计的时候一定要小心验证图片保证用户上传的图片是有效的图片;不要把图片上传到网站的目录中, 而是单独的配置一台图

2015-01-07 17:06:34 420

原创 phpstudy 安装 ioncube loader扩展

1.首先安装phpstudy见上一篇http://segmentfault.com/blog/hainuo/11900000024360592.到http://www.ioncube.com/loader-wizard/loader-wizard.zip 下载本地环境检测文件3.解压出来后复制到/phpstudy/www/目录在浏览器中输入 http://localhost/l

2015-01-07 16:56:08 2304

原创 label自动换行

label.numberOfLines = 0;

2015-01-07 16:44:56 556

原创 IE浏览器访问Flask自带服务器假死问题解决方法

在本地调试Flask应用程序,如果使用IE浏览器访问,会经常出现卡住(假死)现象,这是一个比较烦人的问题。其实解决方法也比较简单,只要给app.run加上一个threaded=True参数或者processes=N参数(N改为实际数值)。假如:pythonif __name__ == '__main__': app.run(threaded=True) # 或者

2015-01-07 14:50:22 2454

原创 DOM-based XSS in jQuery

本文介绍了几种可能被 XSS 攻击的 jQuery 使用方法。$我们经常使用向 $ 内传入一个字符串的方式来选择或生成 DOM 元素,但如果这个字符串是来自用户输入的话,那么这种方式就是有风险的。先看一个 DEMO:http://jsbin.com/duwuzonife/1/edit?html,js,outputjavascript$("");当用户输入的字符串是像这样的时

2015-01-07 14:33:56 426

原创 bearcat - 让前端也流畅使用依赖注入

bearcat 0.3 版本在圣诞正式推出bearcat 不再仅仅支持node.js环境,浏览器环境也完美支持意味着 前端也可以编写基于自描述js对象的依赖注入依赖关系基于js对象属性的自描述,无需使用require, define来进行模块管理同时bearcat还内建了script脚本异步加载机制,无需打包,前端模块化开发所见即所得10秒例子,car 依赖 engine,解析

2015-01-07 14:18:59 289

原创 译文:JavaScript hacks explained

JavaScript 黑魔法解密有经验的开发人员大量的使用以下的JavaScript特殊技巧.对于初学者来说,大部分技巧的意图不是很明显。这些技巧使用了语言特点而不是直接用途。但是它产生的副作用是这些技巧的作用不能直接通过默认语言的意义来得到。以下是我列举的一些编辑后的技巧说明。您必须明白一点.大部分这些技巧只是一些骇客的方式,对于您日常的开发并不是很重要。这篇文章的目的是阐明这些技巧的是

2015-01-06 13:44:44 246

原创 (原创)SpriteKit+Swift学习笔记(四)-纹理部分缩放

这个纹理部分缩放,可能初次接触游戏开发的小伙伴,不知道是什么东西,简单地说,部分边和角不缩放,只缩放中心的部分纹理。其实这个用途非常广,最常见的就是血条蓝条和玩家角色对话框。血条蓝条应该怎么做?(对话框同理)根据开发经验和需求的不同,可以有多种形式:第一种,用一个矩形条,设置x轴缩放xScale,如果血条纹理宽度高度都是10,需要表示血量100,那么设置xScale=10,横轴放大10倍即可(hp

2015-01-06 13:32:29 670

原创 误删vSphere虚拟机.vmdk文件的恢复

1. 错误描述在vSphere上,一次重启虚拟服务器时出现启动不了,提示找不到vmdk虚拟磁盘文件:2. 原因分析查看这台虚拟服务器的摘要信息,对比datastore上其他可用的虚拟机,发现损坏的服务器上确实缺少一个vmdk磁盘文件,但是可以看见一个50G的xxx-flat.vmdk文件;而正常的服务器只有xxx.vmdk,没有xxx-flat.vmdk,关机之后两个文件都存在,而

2015-01-06 13:21:44 3543

原创 自定义事件

/* *第一种方式,old */var testEvent = document.createEvent("Event"); testEvent.initEvent("test",true,true);/* *第二种方式 */var testEvent = new Event("test");/* *第三种方式,推荐 */var t

2015-01-06 13:11:14 209

原创 移动端Web系列4 -- meta

分类在介绍移动端特有 meta 标签之前,先简单说一下 HTML meta 标签的一些知识。meta 标签包含了 HTTP 标题信息(http-equiv) 和页面描述信息(name)。http-equiv:该枚举的属性定义,可以改变服务器和用户代理行为的编译。编译的值取content 里的内容。简单来说即可以模拟 HTTP 协议响应头。最常见的大概属于Content-

2015-01-06 13:01:30 411

原创 如何使用Ant自动构建Android版本

Ant是一个很好的跨平台构建工具,特别是对于Java项目,这里使用它对Android工程进行自动化构建可以得到非常大的便利。一般来说对Android工程进行构建主要有以下几个步骤:  使用aapt来编译工程生成R.java;  使用aapt来对工程所需用的资源进行打包;  转换并编译AIDL文件;  编译Java源文件并生成.class;  转换并压缩.class文件成.dex

2015-01-06 12:39:49 352 2

原创 [求职面试][基础]基础问题汇总

取模和取余的区别取模5 mod 2 = 1-5 mod 2 = -5-2floor(-5/2) = -5-2(-3) = 1当除数与被除数的符号相同时,rem和mod的结果是完全相同的;当除数与被除数的符号不相同时,结果不同。具体说,rem结果的符号与被除数相同;mod结果的符号与除数相同。1.求 整数商: c = a/b;2.计算模或者余数: r = a - c*b.

2015-01-06 12:30:22 324

原创 服务器端文件分片合并的思考和实践

原文:服务器端文件分片合并的思考和实践笔者在项目中处理大文件上传的需求,仿照七牛云存储的接口设计。然而,在服务器端文件合并时遇到了很大的问题:合并太慢。本文记录了当时的思路和解决的方案大文件的需求文件上传是个很常见的需求。尽管HTTP是基于TCP上层的协议,但是HTTP协议本身并不适合处理超大的请求体,文件上传有很大的稳定性问题,如果中途断开了,将前功尽弃。为了改善用户体验或者缓解服务

2015-01-05 22:15:23 1561

原创 扩展 Web 应用程序的架构问题

扩展 Web 应用程序的架构问题标签(空格分隔): Architecture Scaling Web Applications该文原文是 Architecture Issues Scaling Web Applications我将在这篇博客中揭露出当我们扩展和性能调优大型 Web 应用程序时遇到的架构问题。让我们通过定义几个术语来创造共同的理解和词汇开始。稍后当扩展 W

2015-01-05 22:03:14 312

原创 如何在Mac os X上搭建本地服务器环境

之前苦于mac上搭建本地服务器之艰辛,找寻好久都没找到一款类似windows上集成的本地服务器环境,诸如phpstudy,xampp,appserv,虽说xampp也有mac版,但不知为何不是Apache启动不了(估计端口被占了),就是MySql有问题,总是不如意。mamp现在终于找到Mac上最好用的本地服务器软件了,一键安装Apache、MySQL、PHP、Postfix等服务器软件,简

2015-01-05 21:39:11 2971

原创 图片上传--SpringMVC实现RESTful接口

1、利用SpringMVC实现RESTful接口,获取包括图片在内的若干字段值。RESTful接口的实现`import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Date;import java.util.List;import org.apache.commons.lo

2015-01-05 21:27:01 1995 1

原创 别颓啦:变颓为宝,也许这个可以玩一玩

和一起读研究生的同学Meng一起上周开发了这个Chrome Extension:别颓啦 - bietui.la。一开始Meng说了这个idea,我有一个想法就是这个是绝对不可能防止人颓的。。。因此,我抱着好玩+学习Chrome API的愿望开始了,谁知道在开发过程中狂背了200多个单词,然后觉得也许这个还挺靠谱。作为一个在课余+工作之余+玩乐之余完成的轻应用,我在这里简述一下从整个过程中学

2015-01-05 21:16:45 447

原创 免费在线app安全(漏洞)测试工具

免费APP漏洞安全检测工具:http://safe.ijiami.cn/漏洞分析是爱加密推出免费 APP 漏洞分析平台,服务包括一键对APK 进行签名数据信息采集、内部配置信息采集、市场渠道相关信息采集、静态分析漏洞信息展示、动态分析漏洞信息展示等功能。爱加密的漏洞分析功能集成了目前黑客最常用的各种破解方法与思路,模拟黑客攻击行为进行分析。开发者只需上传自己的应用,就可以自动分析出应用存在

2015-01-05 21:04:06 1923

原创 不确定栏目数量的(多行)导航栏居中

DEMO:http://www.tinghaige.com/demo/uncertain-nav/代码:HTML代码 Test Test Test Test Test Test

2015-01-05 20:39:32 338

原创 【Java】单例(singleton)设计模式

单例设计模式是Java中应用最为广泛的设计模式之一,保证了一个类始终只有一个对象,具有以下特点:私有的构造函数 ——没有其他的类能实例化该对象 引用时私有的 public static方法是获取对象的唯一方式 singleton故事这里1有一个关于singleton的故事,一个国家只能有且仅有一个president,president只能被实例化一次,getPresident()返

2015-01-05 20:28:33 275

原创 [零基础学Python]有容乃大的list(4)

list的话题的确不少,而且,在编程中,用途也非常多。有看官可能要问了,如果要生成一个list,除了要把元素一个一个写上之外,有没有能够让计算机自己按照某个规律生成list的方法呢?如果你提出了这个问题,充分说明你是一个“懒人”,不过这不是什么坏事情,这个世界就是因为“懒人”的存在而进步。“懒人”其实不懒。对list的操作range(start,stop)生成数字listran

2015-01-05 20:17:10 235

原创 [No.009]About VMWare

外部网络变化之后,需要修改DNS [root@rhe ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0TYPE=EthernetUUID=4f61c2be-900c-47cc-a0a5-b56223dff69dONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=noneD

2015-01-05 20:03:06 214

原创 XMPP 协议适合用来做移动 IM 么

XMPP 协议是什么XMPP(Extensible Messaging and Presence Protocol,前称Jabber)是一种以 XML 为基础的开放式实时通信协议,关于它的协议细节,网上已经有太多分析文章,我这里就不再赘述(而且,我也不可能比别人解释的更清楚)。简单来看这个协议,我们只需要知道:1,XMPP 的三种基本角色:客户端、服务器和网关,通信能够在这三者的任意两个之

2015-01-05 19:51:15 309

原创 ubuntu下,使用chrome 浏览器运行安卓apk程序

0:注意:该教程的使用环境是:ubuntu 64 bitschrome 64 bits,version 37及以上1:下载安装chrome的64 位的版本37及以上,下载地址如下,我已经上传到自己的百度云了http://pan.baidu.com/s/1c0eWsrm2: 安装node.js前面要安装下面的库sudo apt-get install li

2015-01-05 19:39:58 892

原创 Socket编程基础——无连接UDP

与面向连接的网络连接相比,无连接的网络通信不需要在服务器与客户端之间建立连接。面向非连接的Socket通信是基于UDP的,服务器端不需要调用listen()和accept()函数来等待客户端的连接;客户端直接向服务器发送数据。1、服务器端(1)建立Socket,绑定本地IP和端口server=socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP);sAdd

2015-01-05 19:29:24 328

原创 Qt中无法使用QUiLoader类的原因

1:QUiLoader这个头文件件找不到,在pro文件中加入这个头文件的路径INCLUDEPATH +=/usr/include/qt4/QtUiTools/2:编译通过后,仍然无法使用,报ld链接时的错误,这时是找不到库文件,所以链接失败,在pro文件中加入库文件名(QUiLoader类放在一个独立的库中)CONFIG += uitools个人感觉这个QUiLoa

2015-01-05 19:20:23 636

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除