Archive

Author Archive

我在台湾的感受

十月 8th, 2015 No comments

来到台湾最大的感受,就是湾湾人民的热情健谈、自由民主、经济基建差异。 阅读更多…

Linux下搭建Tomcat环境

八月 28th, 2015 No comments

多年没有碰Java Web了,之前也一直在Windows下玩耍。在Linux下跑起Tomcat也折腾了一阵。

看Apache Tomcat官网,已经有Tomcat 8.x(据说支持Oracle Java 7.0标准),7.x和6.x,习惯还是使用6.0.44版本。

阅读更多…

Liunx下搭建Rails和Nginx环境

八月 12th, 2015 No comments

用rails开发轻量级web,效率最高!

阅读更多…

域名备案和博客迁移至国内

七月 29th, 2015 1 comment

一直用的dreamhost国外的主机,前些日子感觉越来越不好使,速度慢不说,经常根本无法连接上,FTP更是慢大部分时候无法上传和下载。然后国内环境又碰到好多网站设置需要域名备案号的,不然无法使用某些功能,比如国内的广告商、微信网页安全授权等。

前些日子,在微博上偶然发现阿里云虚拟主机免费使用,赶紧尝试了一个,还挺好用的,毕竟咱博客就是个小网站足够了。于是就开始了域名备案和数据迁移。

虽然有点恶心域名备案这个事情,但想想咱也不干什么坏事,毕竟国内网速快啊。 阅读更多…

端午前的西安华山游

六月 20th, 2015 No comments

因为到六月底,去年的年假结余就要被清空,还有两天年假,肯定是要出去玩一趟了。最终选择了西安,在端午前一周的周末加前后各一天共四天四晚,6.11晚出发6.15晚回。对西安有着比较特殊的感情期待,也许是因为《让青春继续》,也许是因为某些人。

古城墙夜景

古城墙夜景

主要行程规划:

6.11 晚上飞机抵达西安,入住(火车站附近)

6.12 东线游,华清池 -> 兵马俑;晚上回民街和大雁塔喷泉

6.13 出发华山,爬华山,自古华山一条路到北峰,经苍龙岭到金锁关至东峰,东峰宾馆入住

6.14 华山日出,东峰->鹞子翻身->南峰->西峰->北峰->索道下,回西安;夜游城墙

6.15 逛吃逛吃,大慈恩寺(大雁塔) -> 西安博物院(小雁塔)-> 回民街购物 -> 机场回杭州

阅读更多…

战胜华山,一生平安

六月 20th, 2015 No comments

西岳华山,天下第一险,因金庸先生的《射雕三部曲》和《笑傲江湖》闻名天下,“华山论剑”石碑在华山峰上就有好几座。长空栈道、鹞子翻身几处险境,更是驴友非体验不可的险景。在自古华山一条路的山腰上,有碑而立:战胜华山,一生平安!

俯瞰下棋亭全景

俯瞰下棋亭全景;特别钟爱华山下棋亭

阅读更多…

天下HD这五个月

五月 29th, 2015 No comments

去年年底天下HD公测,毕竟天下的因素自己公司的产品,下载了随便玩了下,真正爱上开始玩是在元旦和朋友出去的时候又玩了下,一发而不可收。虽说是手机游戏,这5个月来,每天可真是至少花费2-3小时在游戏上,多则7-8个小时,真心感觉浪费时间,也是弃游的最大原因。 阅读更多…

2015浙大春季毅行,事迹达成

五月 21st, 2015 No comments

一开始wy叫我去毅行的时候,我是拒绝的,但是想想已经宅了真的好久了还是出去走走吧,也想达成一下毅行这个事迹,因为2-3年前也走过一次,但是那次并没有走完。终于经过6个小时,顺利抵达之江校区,完成目标,相当开心啊。 阅读更多…

JSON中出现解析错误的原因之一:不可打印字符

四月 9th, 2015 No comments

JSON规范规定,字符串需要用Unicode传输,而对于ASCII码中的前32个不可打印字符(第33个字符为空格)应该转化为明文的转义模式,比如换行符0A:”\n”,出现在json中就应该是明文的\n,所以内部表示就应该是”\\n”。

所以假如一个json字符串中出现了01-1F这31个字符(00空字符倒是不会出现错误),json就会解析错误。

阅读更多…

美丽樱花,“文明”武汉

四月 7th, 2015 2 comments

武大樱花季,说走就走,正好和一个刚认识不久的武汉朋友同行。最初计划着3月21和22的周末,一来因为周日晚回杭州的Z45硬卧无票,二来觉得准备时间不够充分,于是延迟到了3月28和29这个周末,虽然因此错过了武大樱花最旺盛的时候,但也不虚此行,较为满意。

樱顶·远古的呼唤

此行最喜欢的照片,摄于武大樱顶:樱顶·远古的呼唤

阅读更多…

Cordova native API和开源插件

三月 30th, 2015 No comments

开发Cordova的APP使用到下面几个原生或者开源第三方的插件,很好用

1.Notification

org.apache.cordova.dialogs和org.apache.cordova.vibration

取代原生alert(不能控制title),提供丰富的alert、confirm等API

2.InAppBrower

org.apache.cordova.inappbrower

可以在APP内部新开一个页面打开浏览器,可以关闭

3.Network Infomation

org.apache.cordova.network-infomation

检查网络类型和状态,可以检查出当前网络是2G/3G/4G/WIFI,有事件监听断网和连网

4.Camera

org.apache.cordova.camera

调用摄像头或从文件夹中选取,可以获取图片base64后的数据

5.Screen Orientation

net.yoik.cordova.plugins.screentorientation

可以使用screen.lock等API, 锁定或者解锁屏幕转动

6.BarcodeScanner

com.phonegap.plugins.barcodescanner

https://github.com/wildabeast/BarcodeScanner/    主页地址

可以扫描二维码等,获取内部的文本信息和文本类型

 

防止数据库数据重复的几种方法

一月 7th, 2015 No comments

在某些数据库表中,比如记录的是一些关联关系,比如某个人关注了另外一个人,person_id和target_id,这种数据表的数据如果出现了重复,可能会引起程序上其他地方的诡异bug,要尽量保持数据的唯一性。这种数据重复,要不就是插入数据时根本没有做存在检查,或者是可能由二次提交产生的比较麻烦的并发情况。

1. 代码层做同步控制,利用锁机制
2. 在数据查重时利用数据库事务 + SQL层加入排他锁,select * from xx where ... lock for update
3. 数据库层Unique检查,建表时加入unique的索引

前两个方法在代码层面,比较容易控制,第三种方法最彻底但是出现冲突时候会报异常。

不过如果在高并发的情况下,使用第三种方式然后主动捕获异常,也是很不错的甚至是最好的。

Ruby字符串的编码

十二月 21st, 2014 No comments

相比较于Java String的编码转换(先将String根据原字符集转化为字节数组,然后再用字节数组根据新字符集拼装成新的字符串),Ruby的字符串编码转化省去了中间字节数组的过程,直接string.encode(new_encoding)即可。

阅读更多…

青岛,成也机票,败也机票

十一月 17th, 2014 No comments

真是成也机票,因为真是不能再便宜的来回机票决定这次的旅行,败也机票,去青岛居然因为40分钟领登机牌的限制而误机了而重新买票,多花好多钱更影响了旅行的心情(详见:机票风波)!在作死的误机下在不对的季节里在雾霾的笼罩中,青岛的美对我始终带了太多遗憾,不过还是值得玩这3天的。

青岛-from小青岛

青岛-from小青岛

青岛除了众所周知的海水沙滩浴场和奥帆外,德国式建筑群很值得一看。青岛市区的地形也真的是醉了,如果一个人说北方的城市规划都整齐不像南方城市的小巷胡同错综复杂,那Ta一定没去过青岛!青岛市区里真是难找到一条既水平又直线的大路,坡度陡的令人咋舌,十字路口?多的是三字、五字、六字…全区好多的路名用全国省市区名来命名,也怪不得有浙江路和杭州路(杭州路在全国真的很少)。

阅读更多…

linux的timeout处理wkhtmltopdf进程超时

十月 25th, 2014 No comments

rails程序中要调用一个系统命令,但是这个系统命令在某些时候可能会处理很久也得不到结果,就需要控制超时情况。

阅读更多…