﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Read Sean</title><link>http://www.blogjava.net/sean/</link><description>Read me, read Sean.</description><language>zh-cn</language><lastBuildDate>Mon, 07 Jul 2008 02:23:15 GMT</lastBuildDate><pubDate>Mon, 07 Jul 2008 02:23:15 GMT</pubDate><ttl>60</ttl><item><title>Firefox这次玩大了</title><link>http://www.blogjava.net/sean/archive/2008/06/18/208749.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Tue, 17 Jun 2008 21:30:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/06/18/208749.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/208749.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/06/18/208749.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/208749.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/208749.html</trackback:ping><description><![CDATA[
		<br />刚看完法国对意大利的比赛，准备下载Firefox 3，结果你猜怎么着？Mozilla英文官网上提供的链接，到现在仍然是2.0.0.14，尽管图标已经更新成了Firefox 3，而Mozilla中文官网，干脆就连不上了。(实际上是mozilla.org.cn连不上，不过貌似中文官网不知什么时候已经改成了mozillaonline.com，但提供的仍然是RC3。)<br /><br />其实在昨天，就已经有人对Mozilla选择在PDT 10:00 AM开始Download Day提出了异议，因为既然Firefox是面向全球的粉丝，这次下载活动也是全球范围内进行，为什么要选择在大半个欧洲都处于当天深夜，大半个个亚洲都已是第二天凌晨的时候启动呢？<br /><br />好吧，我们尊重Mozilla的选择，但是看来好事多磨，在PDT 10:00 AM，也就是北京时间凌晨1点过去4个多小时后，仍然没法顺利下载到正式版。<br /><br />来自CNET的跟踪报道：<br /><a target="_blank" title="http://news.cnet.com/8301-10784_3-9970628-7.html" href="http://news.cnet.com/8301-10784_3-9970628-7.html">http://news.cnet.com/8301-10784_3-9970628-7.html</a><br /><br />[更新|2008-06-18 06:15:00]<br />决定DIY一下，不等官网刷新了：<br /><a title="http://download.mozilla.org/?product=firefox-3.0&amp;os=linux&amp;lang=en-US" href="http://download.mozilla.org/?product=firefox-3.0&amp;os=linux&amp;lang=en-US">http://download.mozilla.org/?product=firefox-3.0&amp;os=linux&amp;lang=en-US<br /></a>注意后面的参数，根据需要，os可以选择linux/osx/win，lang可以选择en-US/zh-CN等等。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/208749.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-06-18 05:30 <a href="http://www.blogjava.net/sean/archive/2008/06/18/208749.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Django终于要1.0了</title><link>http://www.blogjava.net/sean/archive/2008/06/17/208682.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Tue, 17 Jun 2008 10:14:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/06/17/208682.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/208682.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/06/17/208682.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/208682.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/208682.html</trackback:ping><description><![CDATA[
		<br />或许多少和Python/Django这个社区的人们比较内敛、慢条斯理、喜欢埋头做事有关，Django一直以来版本号更新都很保守，到现在还是0.96。什么时候才有1.0这个问题被人提起无数次，这让很多对它有兴趣的朋友处于长期的观望之中。眼睁睁看着隔壁Rails如火如荼的都出到了2.1.0，Django终于要有动作了：<br /><br /><a target="_blank" title="http://code.djangoproject.com/wiki/VersionOneRoadmap" href="http://code.djangoproject.com/wiki/VersionOneRoadmap">http://code.djangoproject.com/wiki/VersionOneRoadmap</a><br /><br />根据这份线路图，今年7月，Django会推出1.0的第一个alpha版本，接下来在8月会有两次beta和一次rc，如果一切顺利的话，让许多人望眼欲穿的Django 1.0将有望于今年9月正式同大家见面。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/208682.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-06-17 18:14 <a href="http://www.blogjava.net/sean/archive/2008/06/17/208682.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[新闻] JRuby 1.1.2 发布</title><link>http://www.blogjava.net/sean/archive/2008/05/28/203452.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Wed, 28 May 2008 04:08:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/05/28/203452.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/203452.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/05/28/203452.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/203452.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/203452.html</trackback:ping><description><![CDATA[
		<br />JVM下的Ruby语言实现JRuby发布1.1版的第二个升级版1.1.2，这个版本最主要关注的仍然是性能，值得一提的包括：<br />
1- 启动时间大大缩短。<br />
2- YAML标记解析速度提高100x以上。<br />
3- 方法调用在性能、线程和栈深度等方面的增强。<br />4- 其他bug。<br /><br />主页: <a target="_blank" title="http://jruby.codehaus.org/" href="http://jruby.codehaus.org/">http://jruby.codehaus.org/</a><br />下载: <a target="_blank" title="http://dist.codehaus.org/jruby/" href="http://dist.codehaus.org/jruby/">http://dist.codehaus.org/jruby/</a><br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/203452.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-05-28 12:08 <a href="http://www.blogjava.net/sean/archive/2008/05/28/203452.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>So long, Ubuntu!</title><link>http://www.blogjava.net/sean/archive/2008/05/02/197760.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Fri, 02 May 2008 09:35:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/05/02/197760.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/197760.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/05/02/197760.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/197760.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/197760.html</trackback:ping><description><![CDATA[
		<br />最近在家休息，想来Ubuntu新的LTS版本8.04已经出来一周多了，试试看吧，正好想给家里的服务器来一次升级，未曾想这一试让我彻底和Ubuntu说了bye bye。<br /><br />我的主打机器是一台T43，在3月下旬，这台ThinkPad就彻底从Ubuntu变脸成了Arch Linux，运行至今，十分稳定，要速度有速度，要功能有功能，简单而强大，让人爱不释手。我家里有一台"老"机器，AMD Athlon 2500+ / 512M，先后装过SuSE、Fedora、CentOS、Debian、Ubuntu 7.10，由于很长一段时间以来都比较忙，没时间去折腾，在最后这次开刀之前，定格在了Gusty Gibbon。<br /><br />说回这次开刀。趁休假有时间，我打算再整理/升级一下这台服务器，正好Ubuntu 8.04 LTS出来，冲着省事（平时难有时间去折腾）和LTS，我想这应该还是比较自然的一个选择。安装过程很顺利，该找到的硬件都找到，一切都还像是Ubuntu在7.10基础上正常的一次升级版，谁知刚配置完几个我常用的应用程序/服务，就遇到了严重的问题：系统会随机（通常几分钟时间）锁住，没有反应，键盘灯和鼠标灯还有反应，但是屏幕定格，Ctrl-Alt-Backspace或者Ctrl-Alt-F1等等，都不管用了，什么提示都没有。硬件问题？不像啊，之前的Gusty跑得很好。网上一搜，好家伙，还是普遍现象：<br /><br /><a target="_blank" title="http://ubuntuforums.org/showthread.php?t=768200" href="http://ubuntuforums.org/showthread.php?t=768200">http://ubuntuforums.org/showthread.php?t=768200</a><br /><br />没想到拿LTS的正式ISO安装，还是无奈的做了一次小白鼠，对Ubuntu印象因此大打折扣。算了吧，装回熟悉的Debian，一切又恢复安静。从今天起，我的Linux推荐榜调整为：公司服务器 - CentOS、个人服务器 - Debian、个人桌面 - Arch Linux。<br /><br />So long, Ubuntu!<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/197760.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-05-02 17:35 <a href="http://www.blogjava.net/sean/archive/2008/05/02/197760.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[新闻] JRuby 1.1发布</title><link>http://www.blogjava.net/sean/archive/2008/04/05/190985.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Sat, 05 Apr 2008 15:01:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/04/05/190985.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/190985.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/04/05/190985.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/190985.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/190985.html</trackback:ping><description><![CDATA[
		<br />JVM下的Ruby语言实现JRuby正式发布1.1版，这个版本最主要关注的是性能，除此之外，值得一提的包括：<br />1- 支持将Ruby代码编译成Java Bytecode。<br />2- 将Oniguruma这个Ruby 1.9标配的正则库移植到Java。<br />3- 重构过的IO实现。<br />4- 更低的内存消耗。<br />5- 修复大量其他兼容性问题。<br /><br />主页: <a target="_blank" title="http://jruby.codehaus.org/" href="http://jruby.codehaus.org/">http://jruby.codehaus.org/</a><br />下载: <a target="_blank" title="http://dist.codehaus.org/jruby/" href="http://dist.codehaus.org/jruby/">http://dist.codehaus.org/jruby/</a><br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/190985.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-04-05 23:01 <a href="http://www.blogjava.net/sean/archive/2008/04/05/190985.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[链接] KDE 4.1: Visual Changelog (rev 783000)</title><link>http://www.blogjava.net/sean/archive/2008/03/12/185525.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Tue, 11 Mar 2008 16:27:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/03/12/185525.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/185525.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/03/12/185525.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/185525.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/185525.html</trackback:ping><description><![CDATA[
		<br />一篇关于目前开发中的KDE 4.1最新进展介绍<br /><a target="_blank" title="http://polishlinux.org/kde/kde-41-visual-changelog-rev-783000/" href="http://polishlinux.org/kde/kde-41-visual-changelog-rev-783000/">http://polishlinux.org/kde/kde-41-visual-changelog-rev-783000/</a><br /><br />看上去挺不错的，有了KDE 4的基础，从4.1开始，一些之前来不及polish的地方开始逐渐被弥补。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/185525.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-03-12 00:27 <a href="http://www.blogjava.net/sean/archive/2008/03/12/185525.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[Tips] 移植Oracle数据库到PostgreSQL的要点</title><link>http://www.blogjava.net/sean/archive/2008/03/11/185510.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Tue, 11 Mar 2008 15:04:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/03/11/185510.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/185510.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/03/11/185510.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/185510.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/185510.html</trackback:ping><description><![CDATA[
		<br />最近尝试把一个Oracle数据库，连同构建在这个数据库上的Java应用移植到PostgreSQL环境。在移植过程中，总结了一些要点，一方面作为笔记备忘，一方面也给有类似任务需要处理而又无从下手的朋友作为参考。<br /><br />1- 首先是准备PostgreSQL环境。有条件的话，最好是找一台空闲的PC机作为测试服务器，安装Linux或BSD，然后从源码编译最新的PostgreSQL 8.3.0。编译时，通过configure指定--with-perl和--with-python以支持PL/Perl和PL/Python。因为绝大多数Linux发行版都已自带Perl和Python，不必额外安装。<br /><br />2- 如果是Windows环境，又需要Perl和Python，则必须额外安装，Python的话，可以方便的找到2.5 for Windows的安装包，Perl的话，推荐ActivePerl，相对麻烦一点，为了后面用到的一些便利的功能顺利加载，Perl版本尽量选5.8.8。<br /><br />3- 创建数据库和用户。通过initdb初始化数据目录，配置postgresql.conf指定主机IP、端口等等信息，配置pg_hba.conf指定访问权限，通过pg_ctl -D &lt;数据目录&gt; -l &lt;日志文件&gt; start启动postmaster，然后createdb、createuser创建数据库和用户。数据库建好之后，就可以createlang -d &lt;数据库名&gt; [plperl|plperlu|plpython|plpythonu]开启PL/Perl和PL/Python。具体命令行参数可通过各命令加--help查看。<br /><br />4- 安装PostgreSQL客户端pgAdminIII，最新版是1.8.2，有条件的话，也可以下载源码自己编译。<br /><br />5- 安装Oracle客户端，需要在PostgreSQL同一台机器，以便Perl用于连接数据库的DBI和Oracle驱动DBD::Oracle模块顺利安装。如果是Windows上的ActivePerl，则可以通过ppm install DBD-Oracle，如果是Linux/BSD，则可以通过CPAN来安装，如perl -MCPAN -e shell进入CPAN Shell，通过install &lt;模块名&gt;或force install &lt;模块名&gt;安装DBI和DBD::Oracle。<br /><br />6- 数据库的移植，可以选择ora2pg来帮忙，目前的版本是4.7。ora2pg是一个用于读取Oracle数据库schema、数据，并生成PostgreSQL脚本或直接导入PostgreSQL数据库的Perl工具。用法很简单，就是通过.conf文件指定数据库连接信息包括NLS_LANG、需要导出导入的schema、table、view、data等等，然后执行一个pl脚本。这是目前相对比较成熟的一个方案，但是遇到schema复杂、约束较强的数据库，需要手工处理的地方还是不少。建议不要直接写入PostgreSQL，而是生成SQL脚本，验证无误后再执行。ora2pg默认会把Oracle中名称的大写转换成小写，因为PostgreSQL在解析SQL时，除非""括起来，默认都是转成小写。schema、table、view、sequence、data等等，基本用ora2pg，加上一些手工调整即可搞定。至于function、stored procedure等，还是手工移吧，偷不得懒。除了ora2pg，其实也可以配置DBI-Link，将Oracle数据库挂到PostgreSQL数据库作为一组独立的"schema"，然后用create table xxx as select ... from ...这样的语法来倒表和数据。PostgreSQL的contrib包也附带有一个dblink，不过是连接其他PostgreSQL数据库的，如果需要连接非PostgreSQL，
还是考虑DBI-Link，任何可以通过Perl的DBI接口访问的数据库，都能link进PostgreSQL。<br /><br />7- 接下来就是Java应用本身了，我这次移的这个应用是Spring+iBatis架构的，很多SQL语句都是明文，好在DAO层的基础部分(CRUD)的SQLMap是工具自动生成，且都是符合ANSI SQL92标准的，不需要修改即可使用。其余的高级查询SQL，需要调整的地方不少，一些常见的修改列举如下：<br /><br />i. SELECT出来的column（包括子查询），如果有别名，必须加AS，比如 select null as some_column from some_table;<br />ii. PostgreSQL没有dual表，类似select 0 from dual的语句，写成select 0即可;<br />iii. DECODE函数需要重构成(case when some_column = 'some_value' then 'some_other_value' when ... then ... else 'some_default_value' end ) as some_column;<br />iv. NVL()函数，PostgreSQL中相对应的是coalesce()，其实几乎所有主流DBMS都支持coalesce，包括Oracle，这才是标准写法;<br />v. 比较日期，在PostgreSQL中，建议使用date_trunc('day', SOME_DATE) = date_trunc('day', #enteredDate#)这样的写法，其中'day'位置可选字段包括有year、month、week、hour、minute、second等等;<br />vi. SYSDATE，对应到PostgreSQL是current_timestamp，可以根据需要使用current_date;<br />vii. ROWNUM，通常我们用ROWNUM都是为了限制查询出来的记录数，PostgreSQL没有这个关键字，需要改成在SELECT语句最后添加 LIMIT语句，如LIMIT 100;<br />viii. (+)这样的外连接写法需要调整为SQL标准的 table1 [LEFT|RIGHT|FULL] OUTER JOIN table2 ON (...);<br />ix. CONNECT BY ... START WITH ... 递归查询可以参考 http: //www.postgresql.org/docs/8.3/static/tablefunc.html 的connectby()函数.<br /><br />最后再多提一点，PostgreSQL自带的过程语言是PL/pgSQL，在PostgreSQL上写function，除了用plpqsql，还支持sql、plperl(u)、plpython(u)等等。如果你对SQL天生过敏，看类似PL/pgSQL的代码都很吃力，别说是写了，你完全可以用你喜欢的语言来表达函数和存储过程的逻辑。有了PL/Python，你还怕什么呢？你几乎能做任何事。<br /><br />[更新 20080313] 把JDBC驱动的部分漏掉了，移植Java应用时，除了改SQL，还需要拿PostgreSQL的JDBC驱动放到classpath下面，如WEB-INF/lib，然后修改数据库连接URL，改成jdbc:postgresql://&lt;ip&gt;:&lt;port&gt;/&lt;dbname&gt;即可。<br /><br />[更新 20080323] 移植schema和数据时，比ora2pg更方便的一种方式是利用EnterpriseDB的Migration Tool，将Oracle的JDBC驱动ojdbc14.jar拷贝到EnterpriseDB安装路径下的jre/lib/ext下后，启动Developer Studio即可建立Oracle连接，选中schema后，可以通过右键Online Migration将schema、数据、函数包等等一次性通通导入EnterpriseDB。如果要继续往"纯"PostgreSQL移，从EDB做backup，然后到PostgreSQL下做restore，这样会丢掉函数包，因为毕竟EDB在PostgreSQL基础上做了相当改造以和Oracle兼容，不过函数包之类还是手工移比较稳妥。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/185510.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-03-11 23:04 <a href="http://www.blogjava.net/sean/archive/2008/03/11/185510.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[快讯] 阿森纳客场2-0淘汰AC米兰昂首进军冠军杯八强</title><link>http://www.blogjava.net/sean/archive/2008/03/05/183825.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Tue, 04 Mar 2008 21:39:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/03/05/183825.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/183825.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/03/05/183825.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/183825.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/183825.html</trackback:ping><description><![CDATA[
		<br />啥也不说了，开心！<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/183825.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-03-05 05:39 <a href="http://www.blogjava.net/sean/archive/2008/03/05/183825.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[新闻] Sun Hires Python Experts</title><link>http://www.blogjava.net/sean/archive/2008/03/05/183819.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Tue, 04 Mar 2008 16:07:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/03/05/183819.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/183819.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/03/05/183819.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/183819.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/183819.html</trackback:ping><description><![CDATA[
		<br />在JRuby得到Sun的认可并成功发布1.0，已经向1.1迈进之时，比Ruby应用更广、更早出现JVM运行版本的Python也终于得到了Sun的重视：<br /><br /><a target="_blank" title="http://www.eweek.com/c/a/Application-Development/Sun-Hires-Python-Experts/" href="http://www.eweek.com/c/a/Application-Development/Sun-Hires-Python-Experts/">http://www.eweek.com/c/a/Application-Development/Sun-Hires-Python-Experts/</a><br /><br />尽管Sun官方的说法是他们会更多的应用和扶持native版的Python，相信一直饱受冷落的Jython，也多少会从中受益吧。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/183819.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-03-05 00:07 <a href="http://www.blogjava.net/sean/archive/2008/03/05/183819.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[新闻] Apache Harmony 5.0 reaches M5</title><link>http://www.blogjava.net/sean/archive/2008/02/29/183052.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Fri, 29 Feb 2008 15:28:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/02/29/183052.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/183052.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/02/29/183052.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/183052.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/183052.html</trackback:ping><description><![CDATA[
		<br />就在2月的最后一天，Apache Harmony发布了5.0的第5个milestone: <a target="_blank" title="http://harmony.apache.org/" href="http://harmony.apache.org/">http://harmony.apache.org/</a><br /><br />为默默耕耘的人鼓掌。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/183052.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-02-29 23:28 <a href="http://www.blogjava.net/sean/archive/2008/02/29/183052.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>球场暴力 惨不忍睹</title><link>http://www.blogjava.net/sean/archive/2008/02/24/181753.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Sun, 24 Feb 2008 05:22:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/02/24/181753.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/181753.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/02/24/181753.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/181753.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/181753.html</trackback:ping><description><![CDATA[
		<br />本赛季状态渐佳，外号"禁区之狐"的阿森纳小将Eduardo在英超客场对阵Birmingham City中惨遭暗害：<br /><br />(<a title="http://www.blogjava.net/sean/archive/2008/02/24/181750.html" href="/sean/archive/2008/02/24/181750.html">由于实在太过血腥，不忍心放在首页，请点击查看</a>)<br /><br />在此强烈谴责Martin Taylor这次不负责任的野蛮铲球，只给你红牌实在太轻了。让我们共同为Eduardo祈祷，祝愿他早日康复！也希望绿茵场上不要再发生类似的惨剧。足球应该是给人带来快乐的，不是人身伤害。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/181753.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-02-24 13:22 <a href="http://www.blogjava.net/sean/archive/2008/02/24/181753.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[新闻] Grails正式发布1.0版</title><link>http://www.blogjava.net/sean/archive/2008/02/07/179425.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Thu, 07 Feb 2008 02:47:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/02/07/179425.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/179425.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/02/07/179425.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/179425.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/179425.html</trackback:ping><description><![CDATA[
		<br />春节期间真是好事不断啊，继<a target="_blank" title="http://www.blogjava.net/sean/archive/2008/02/07/179424.html" href="/sean/archive/2008/02/07/179424.html">PostgreSQL 8.3正式release</a>后，Grails也如约发布1.0版。作为受到Ruby on Rails启发开动的"Groovy版Rails"项目，它在设计哲学上和Rails，包括JRuby版的Rails，有着很大的不同，Rails是从头开始用Ruby完整实现从表现层到ORM所有功能，而Grails则是利用Java社区现有的成熟开源框架，如Spring、Hibernate等，在此基础上整合出一套完整的Web应用框架，有点类似Pylons和Django的区别。<br /><br />我<a target="_blank" title="http://www.blogjava.net/sean/archive/2008/01/27/178036.html" href="/sean/archive/2008/01/27/178036.html">之前一篇随笔</a>也提到过，和其它在JVM中运行的动态语言如Jython、JRuby不同的是，Groovy对于有Java基础的人们来说，学习曲线几乎是平的，上手很快，如果你同时也熟悉Spring和Hibernate等，那么Grails更是不二之选。<br /><br />官网: <a target="_blank" title="http://grails.codehaus.org/" href="http://grails.codehaus.org/">http://grails.codehaus.org/</a><br />Release Notes: <a target="_blank" title="http://grails.org/1.0+Release+Notes" href="http://grails.org/1.0+Release+Notes">http://grails.org/1.0+Release+Notes</a><br />下载: <a target="_blank" title="http://grails.codehaus.org/Download" href="http://grails.codehaus.org/Download">http://grails.codehaus.org/Download</a><br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/179425.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-02-07 10:47 <a href="http://www.blogjava.net/sean/archive/2008/02/07/179425.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[新闻] 开源数据库PostgreSQL正式发布8.3版</title><link>http://www.blogjava.net/sean/archive/2008/02/07/179424.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Thu, 07 Feb 2008 02:04:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/02/07/179424.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/179424.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/02/07/179424.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/179424.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/179424.html</trackback:ping><description><![CDATA[
		<br />经过1月3日和1月18日两轮RC后，PostgreSQL 8.3终于在本月初正式发布了。该版本有很多功能和性能上的重大提升，包括全文搜索、新的数据类型(XML、ENUM、UUID等)、并发autovacuum、异步提交等等，以及对Windows平台更好的支持，如SSPI和VC++等。<br /><br />官方声明: <a target="_blank" title="http://www.postgresql.org/about/news.918" href="http://www.postgresql.org/about/news.918">http://www.postgresql.org/about/news.918</a><br />Release Notes: <a target="_blank" title="http://www.postgresql.org/docs/8.3/static/release-8-3.html" href="http://www.postgresql.org/docs/8.3/static/release-8-3.html">http://www.postgresql.org/docs/8.3/static/release-8-3.html</a><br />各版本功能对照: <a target="_blank" title="http://www.postgresql.org/about/featurematrix" href="http://www.postgresql.org/about/featurematrix">http://www.postgresql.org/about/featurematrix</a><br />下载: <a target="_blank" title="http://www.postgresql.org/ftp/" href="http://www.postgresql.org/ftp/">http://www.postgresql.org/ftp/</a><br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/179424.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-02-07 10:04 <a href="http://www.blogjava.net/sean/archive/2008/02/07/179424.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[链接] 会Java？学Groovy？这里有篇很好的介绍/演示 </title><link>http://www.blogjava.net/sean/archive/2008/01/27/178036.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Sun, 27 Jan 2008 09:14:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/01/27/178036.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/178036.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/01/27/178036.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/178036.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/178036.html</trackback:ping><description><![CDATA[
		<br />如果你有一定的Java基础，想快速的尝尝动态语言的味道，Groovy是个自然的过渡选择。今天无意中看到一篇介绍Groovy的文章，很短，也很有趣，从一个典型的Java程序开始，一步一步"Groovy化"，最终改造成一个完整的Groovy程序：<br /><a target="_blank" href="http://java.dzone.com/news/java-groovy-few-easy-steps"><br />http://java.dzone.com/news/java-groovy-few-easy-steps</a><br /><br />如果你对当下动态语言的现状有所了解，那你多半已经知道能在JVM中运行的动态语言，远不止Groovy一种，那么什么理由会让你选择Groovy而非Jython、JRuby或者其他类似的语言呢？笔者认为主要还是编码习惯和风格，Groovy是这些语言中最接近Java的。Jython和JRuby都是从其他成功的动态语言"移植"过来，带有明显的Python、Ruby语法特征和习惯。选择Jython或者JRuby的朋友，我想大都是原本就有Python或者Ruby的基础，舍不得Python和Ruby的一些很方便的语法和编码风格/习惯/哲学，或者干脆就是为了将Python和Ruby世界的一些框架引入到Java中，或者说是让Python/Ruby应用能够更好的利用Java平台已有的资源。如果你在动态语言上没有这方面的需求，只是为了让你的Java应用更动态，选择Jython或者JRuby只能是凭空增加学习难度。要知道，Python和Ruby都是很有特点、很有个性的语言（其实Java又何尝不是），要从Java的思维和哲学，转向Python/Ruby的思维和哲学，并不是那么容易做到和做好的。<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/178036.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-01-27 17:14 <a href="http://www.blogjava.net/sean/archive/2008/01/27/178036.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[Tips] Linux下挂载中文Windows共享目录</title><link>http://www.blogjava.net/sean/archive/2008/01/18/176166.html</link><dc:creator>大胃</dc:creator><author>大胃</author><pubDate>Fri, 18 Jan 2008 04:54:00 GMT</pubDate><guid>http://www.blogjava.net/sean/archive/2008/01/18/176166.html</guid><wfw:comment>http://www.blogjava.net/sean/comments/176166.html</wfw:comment><comments>http://www.blogjava.net/sean/archive/2008/01/18/176166.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sean/comments/commentRss/176166.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sean/services/trackbacks/176166.html</trackback:ping><description><![CDATA[
		<br />使用Linux很便利的一个地方，就是它把所有资源都按照文件的方式抽象出来，于是我们在读写任何外部资源时，都像是操作本地普通文件一样。访问Windows共享，除了在Nautilus/Konquerer使用smb://，或者命令行使用smbclient之外，当然还有更cool的方式，那就是smbmount。<br /><br />在Ubuntu下使用smbmount，需要安装smbfs包，通过sudo apt-get install smbfs即可。调用方法如下，新建/share目录后：<br />$ [sudo] smbmount //10.10.10.10/share /share -o username=&lt;user_name&gt;,password=&lt;password&gt;,codepage=cp936,iocharset=ut8<br /><br />注意最后两个参数，Linux默认是UTF-8编码，中文Windows则是GBK，按codepage划分，也就是cp936。如果你的环境和上述不一致，则需要相应的修改codepage和iocharset参数。成功以后，我们就可以通过熟悉的ls, cp, cat, less, more, mv, zip, tar, rm, rename, nano, vi等等我们在Linux下已经习以为常的方式来操作了，就和本地文件夹一样。<br /><br />如果想在Linux启动时自动把Windows共享挂进来，则可以修改/etc/fstab，增加如下内容：<br />//10.10.10.10/share /share smbfs username=&lt;user_name&gt;,password=&lt;password&gt;,codepage=cp936,iocharset=ut8,umask=000 0 0<br /><br /><br /><img src ="http://www.blogjava.net/sean/aggbug/176166.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sean/" target="_blank">大胃</a> 2008-01-18 12:54 <a href="http://www.blogjava.net/sean/archive/2008/01/18/176166.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>