挖坟第一季之--->快客王

(题记-->本来有50多段的,天杀的网速害我丢失了...没心情找回来...直接把剩下的发出来..主要是方便自己查询,请勿回帖...)
1.
has_many :posts, :order => "id DESC" do
def latest
find :first
end
end


2.javaeye使用的syntax highlight组件是什么?
[url]http://code.google.com/p/syntaxhighlighter/[/url]

3.
[quote]1. rcov 是基于行统计的,比如条件分支都在一行的,虽然只跑了一个分支,但是还是算100%.

2. rcov和rspec的结合请看 http://rspec.info/documentation/tools/rcov.html , JavaEye的代码也是用这种方式做的 [/quote]

4.Try() 和 Maybe Monad
[url]http://www.iteye.com/topic/169001[/url]

5.一个奇怪的JS导致Firefox Session Restore失效问题
[url]http://www.iteye.com/topic/173024[/url]

6.应该用多大的图片才能能够优化web服务器?
[quote]你说的图标合并是指CSS Sprites吧?
你可以安装Firefox的YSlow插件,看一下第一项Make fewer HTTP requests,有B等级以上就可以了,除非有特别多的CSS背景图片,CSS Sprites带来的速度影响很小很小。 [/quote]

7.
@market.attributes = params[:market] 


8.Javaeye-Wiki 测试有感
[url]http://www.iteye.com/topic/176646[/url]

9.我转到ubuntu上开发时间还很短,而且我记性不好,记不住太多的命令,
GUI在做history, diff, merge的时候还是比命令行有优势,而且netbeans和eclipse的SCM插件机制又特别棒,现在如果转回到命令行,还真不习惯。

我觉得Git很有可能会取代SVN,成为开源社区的下一代SCM标准,而SVN目前看起来不太成功,CVS -> SVN (过渡产品) -> Git

10.rails 中表间关联问题,有更优雅的方法吗?
你可以试试看rquerypad这个插件:
[url]http://www.iteye.com/topic/173464[/url]

11.弹出窗口模式下,父窗口使用AJAX局部刷新得不到最新数据的问题
把form.submit()改成用ajax提交,在提交成功的回调函数里面执行
window.dialogArguments.loadFree();
window.close();


12.关于javaeye2.5的相关文章功能
[url]http://www.iteye.com/topic/155685[/url]

[quote]算法robbin有说明过:
[url]http://www.iteye.com/post/440835[/url]

如果你们用lucene的话,它有自带的api, MoreLikeThis:
[url]http://lucene.apache.org/java/1_9_1/api/org/apache/lucene/search/similar/MoreLikeThis.html[/url]

就是基于这个算法实现的,对于你说的行业相关问题,自己写一个分析器配合专业词库进行拆分即可。 [/quote]

13.Rails 2.1值得关注的新特性
[url]http://www.iteye.com/topic/189171[/url]

14.修改will_paginate支持ajax方式
[url]http://www.iteye.com/topic/188607[/url]

[quote]will_paginate接受一个renderer参数,默认是WillPaginate::LinkRenderer,更好的做法是subclass一个AjaxLinkRenderer,这样不需要修改它的源代码,在做plugin升级的时候会很方便。 [/quote]

15.使用libmemcached提速memcached的操作
[url]http://www.iteye.com/topic/187489[/url]

16.我使用前台模板+AJAX的样例站
[url]http://www.iteye.com/topic/192459[/url]

17.
[url]http://www.iteye.com/topic/177501[/url]
RoR的这个设计对于大数据量tree结构是最好的,比如一些常见的查询都可以避免循环或者递归抓取了:


   --查询某个parent的所有子节点
SELECT * WHERE lft IS BETWEEN parent.lft AND parent.rgt

--统计某个节点的子节点数目
(right - left - 1)/2

--获取某个节点的所有父节点
SELECT * WHERE node.lft IS BETWEEN lft AND rgt

--查询某个parent的所有子节点
SELECT * WHERE lft IS BETWEEN parent.lft AND parent.rgt

--统计某个节点的子节点数目
(right - left - 1)/2

--获取某个节点的所有父节点
SELECT * WHERE node.lft IS BETWEEN lft AND rgt



而且通过在lft, rgt上设置索引能够达到最好的查询效率。

RoR是通过callback来实现新加/删除/移动节点后,更新对应的所有节点lft/rgt值,这个更新也只是一句update语句而已,不需要循环调用。在Java中我们也可以这样设计,比如利用Hibernate的event机制。

你说的加level也是一种常见方法,但是like查询效率很低,不是合适大数据量的一种设计,而且需求如果要求节点是可以变更父子关系的,那么更新level也是一件麻烦的事情。记得很早以前JavaEye讨论过相关的tree数据库设计,文章中总结了多种方法,对于优缺点都分析得很清楚,我再找找看。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值