buffalo资料集锦

虽然已经关注buffalo有一年多了,但一直没有亲手试验过。
昨天决心正式使用buffalo来做ajax-spring调用。
buffalo果然如作者宣称的那样,半个小时内就可以学会使用了。
文档就在bin.zip包中,英文版的,但是非常简单,先看“一分钟教程”,再看“How To”就能开始基本开发了。再看“javascript API”和“Binding”就可以了解全局性的api。

看完文档,程序都写完了。居然在页面右上角发现了 “Wiki for 2.x (Chinese) ”,好奇心起,进去一看居然是中文文档!是在redsaga上的wiki ,冤呐!有中文干嘛还要看英文呢。另外buffalo的相关链接还有:
Forum(Chinese): http://groups.google.com/group/amowa
Forum(English): http://groups.google.com/group/buffalo-ajax
QQ users: add group 16974404(Buffalo group#1) or 15745480(group #2)

我用了半天buffalo,并参考国税web版中的使用方式,概括了一些最佳实践:
1. 覆盖buffalo.events的事件模型来统一处理事件。尤其是善于利用其中的“onException”事件.(thcomm可以借鉴此机制)
2. 使用form binding to bean将form组织成bean或者map传递到远程,反之亦可-----结合buffalo便利的绑定能力,这一模式可以颠覆我们现用的velocity生成页面方式.
3. 与spring集成.
4. 远程返回值不要含有页面元素,应该只含有数据结构.由web处理返回数据,再生成页面,也就是说web层也需要实现MVC模式.结合第二条,这就构成了新的web结构:MVC转移到了javascript中.
5,使用MethodIntecepter接口进行拦截.(譬如session管理)
结论:buffalo易用,易于理解,功能简洁强大,使我们进一步简化并增强web程序变得轻而易举.

buffalo带来的问题之一:
ServletContext(/session)的获取变得不自然.从党辉的分析可以得知,buffalo使用ThreadLocal来保存ServletContext,用静态方法来获取.这必然造成服务器绑定,不利于测试.解决办法是使用facade模式.

相关链接:(关于aop和上传的)
http://groups.google.com/group/a ... ad/0ee2024b868a7167
http://groups.google.com/group/a ... =1#eeb9db911f6a84c0

 

【2007-8 bbs】

 

后记:后来公司选用buffalo做ajax,再后来,大家都知道:buffalo作者在网上消失了。。。

你可能感兴趣的:(spring,Ajax,mvc,Web,Google)