在MySQL中,使用auto_increment类型的id字段作为表的主键,并用它作为其他表的外键,形成“主从表结构”,这是数据库设计中常见的用法。但是在具体生成id的时候,我们的操作顺序一般是:先在主表中插入记录,然后获得自动生成的id,以它为基础插入从表的记录。
这里面有个困难,就是插入主表记录后,如何获得它对应的id。通常的做法,是通过“select max(id) from tablename”的做法,但是显然这种做法需要考虑并发的情况,需要在事务中对主表加以“X锁“,待获得max(id)的值以后,再解锁。这种做法需要的步骤比较多,有些麻烦,而且并发性也不好。有没有更简单的做法呢?
早上,老杨发信问我怎么在浏览器的状态栏隐藏真实的URL链接地址。
例如下面这段html代码,当我们把鼠标指向“点击这里”时,在浏览器的状态栏会显示http://www.evil.com,而他希望用其他的文本(比如http://www.pure.com)来替换掉原有的URL地址,以达到某种邪恶的目的
(也就是你在指向链接的时候,你以为访问的是www.pure.com,结果。。。你懂的)。
<a href="http://www.evil.com">点击这里</a>
解决方法其实很简单,只要将上面的代码改成:
<a href="http://www.evil.com" onMouseOver="window.status='http://www.pure.com'; return true" onMouseOut="window.status=''">点击这里</a>
以上代码很简单,也非常易懂,就是让你在鼠标移到链接上的时候,在浏览器的状态栏里用http://www.pure.com来取代原来的http://www.evil.com。但是,问题来了,以上这段代码只能在IE上才能生效,如果访客用的是firefox或者是chrome要怎么办呢?
在纯tomcat+jsp搭建的网站上,假如我们想把example.com下的所有内容全部重定向到www.example.com下,该如何实现呢?
从搜索引擎优化角度出发,301重定向是网址重定向最为可行的一种办法。当网站的域名发生变更后,搜索引擎只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而收到丝毫影响。同样,在使用301永久性重定向命令让多个域名指向网站主域时,亦不会对网站的排名产生任何负面影响。
那么在tomcat+jsp这样的环境中如何完成301重定向呢?其实方法也很简单,下面给出代码实现:
先来看两个例子:
Sample1
$ (echo -n 123456; sleep 1; echo -n abc >&2; sleep 1; echo -n 789)>puzzle 2>puzzle $ cat puzzle
输出结果:abc456789
Sample2
$ (echo -n 123456; sleep 1; echo -n abc >&2; sleep 1; echo -n 789)>puzzle 2>&1 $ cat puzzle
输出结果:123456abc789
之前我在文章中介绍过如何在侧边栏添加最新评论,今天我们就来看看在添加完评论之后,如何利用JQuery来为评论做一些收缩效果。
最终效果如图所示:

查看演示:http://www.sthelse.com/demo/jquery-collapsible-comments/index.html
下载源码:http://www.sthelse.com/wp-content/uploads/2009/12/jquery-collapsible-comments.zip


