Arganzheng's Blog

stay hungry, stay foolish

Spring事务配置

原理 Spring是基于proxy方式的事务实现机制。如果你的target实现了某个接口,那么Spring可以根据这个接口动态生成一个proxy,在你的service方法前后进行如下事务管理: tx.begin(); try{ target.service(); }catch(Exception e){ tx.rollback(); } tx.commit(); ...

velocity的foreach

背景:在velocity模版文件中为一个java类生成toString()方法。 原来的做法: @Override public String toString(){ StringBuilder sb = new StringBuilder(); #foreach( $field in ${response.fields} ) sb.appe...

如何不刷新页面上传文件

场景: 一个表单页面:有很多字段,其中有一个是上传图片字段,如何提交这个表单页面。 解决方案 方案1. iframe + hidden field 为了不刷新页面,一般来说要不就是对文件标签使用iframe和单独的form来提交。提交到iframe指定的action处理完成后,将文件上传路径回写到父页面的某个字段。需要在iframe中区分是否已经上传了文件。 如:http://api...

如何往HttpServletRequest中塞请求参数

需求 假如用户没有传递cooperatorId,那么默认等于uin。 常规做法是在interceptor或者filter或者action中判断如果没有cooperatorId参数,则设置到request的parameterMap中: String cooperatorId = request.getParameter("cooperatorId"); if(cooperatorId =...

URL encoding学习笔记

最近在搞一个Open API在线测试工具,出现一些问题,因此接触到了URL Encoding相关方面的东西。 首先要了解一下什么是URL Encoding: URL Encoding is the process of converting string into valid URL format. Valid URL format me...

海量图片存储思考

最近在学习分布式存储和数据分析相关的东西,特别是看了Facebook的这篇论文:Finding a needle in Haystack: Facebook’s photo storage,感觉特别与阿里巴巴现在的现状类似。阿里现在的图片存储正处于Facebook的原始阶段——CDN(中美有各自的CDN) ==> imageServer(apache+squid) ==> NFS...

ubuntu下安装Dropbox

本来在ubuntu下安装个软件是一件简单的事情,不值得写成文章。不过由于有“墙”的存在,所以还是记录一下吧,造福后人。 1. 安装dropbox 这个到官网下载相应的deb包安装就可以了。 2. 安装dropbox-deamon 本来安装完dropbox后,执行: dropbox start -i 就可以自动安装的,但是由于“墙”的原因,所以会安装不成功,可以手动下载,具体的可...

dhcp client config in ubuntu

use PPPoEConf to connect to Internet It’s quite simple in ubuntu. Just simply type: $ sudo pppoeconf then flow the instruction. see 使用 PPPoEConf 連接 Internet for a step-by-step tutorial. conf...

Using Fabric to Type Less

Fabric is a tool written in Python that lets you defind tasks and execute them by running fab taskname. Fabfiles are pure Python, so you can build larger tasks out of smaller ones very easily an...

尽量用英文写博客

原因很简单,linux下的中文输入法实在是太烂了,如果是进行大量的编辑行为(如写博客),那么即使是使用vim,带来的便利也被超烂的输入法给抵消掉了,而且vim下不断的切换输入法实在是痛苦。在我没有找到或者自己写一个好用的中文输入法之前,为了提高效率,我将尝试使用英文来表达我的意思,可能会中英文混淆或者Chiness-English,但是这是一个开始。我觉得在方向上是好的。