2007年4月7日星期六

同步启用MSN Space和Blogger博客

yican.blogspot.com这个域名又访问不了了,挺烦的,所以准备启用MSN Space用做备份,利用两个博客的支持邮件发布的功能,达到两个博客自动同步的效果。

2007年4月3日星期二

意外开始又意外结束

风停了云知道
爱走了心自然明了
他来时躲不掉
他走的静悄悄

你不在我预料
扰乱我平静的步调
怕爱了找苦恼
怕不爱睡不着

她的出现是意料之外,然而我却坚定的为这段感情义无反顾;虽然分手似乎是意料之中,然而却发现难于接受突然的改变。记住她的笑,记住她曾经纯真的双眸,记住彼此美好的感觉,潇洒的为这一段感情划上句号。

2007年3月21日星期三

原谅别人的无知

今天随着搜索引擎的连接,不经意的走到了自己最开始的一个blog文章,那个blog我最近的更新是在一年多之前。而那篇文章更是古老,原本是自言自语并且自嘲的一篇blog,居然变成了某个人攻击的弱点。即便是我自己没有学好知识又如何?既没有骄傲过,又没有误导别人,何以成为攻击的地方?那个人最新的评论居然是2007年3月8日,用一个错误的英语句子告诉我让我提高英语水平。呵呵。想起了大学时代的一些事情。我原来想用做为我的团队辨白的文章在学校BBS里引起了轩然大波。不知道什么时候,我讨厌了争吵,喜欢了平静。如果没有这样的环境,那我就自言自语吧,希望我留下的某些东西对新来者有用。喜欢平静,这也是我远离国内技术社区的一个重要原因。把那些文章和评论全部清空了,我不是名人,钻牛角尖找我也没有价值。

2007年3月20日星期二

执子之手,与子偕老

这应该算是我们的第一次约会,我牵着她走在步行街上。谈到了彼此的梦想,我不经意地说其实我的根还没有落下,如果可以更好,如果没有人可以牵挂,那么我可能会选择离开这个城市,调往总部也许是第一个机会。"那我就跟着你去,无论到哪里,凭专业在哪也能养活自己",她抬起头看着我,坚定地说。那一刻,从她那明亮地眸子里,我看到了当初如我学生时代一样的纯真。把她的手攥得更紧了。其实有一句话一直让我向往:"执子之手,与子偕老"。我知道,从此之后,我的生命中多了一个人让我挂念。

2007年3月11日星期日

我想成为领导

老实讲,一直以来,我对于权力这个东西从来都不向往,甚至轻视(是很久以前,看起来很幼稚吧),在大学我对于社团干部,特别是类似于学生会这种非兴趣,学术,研究型社团都很抵触,一群无聊之人,跟着几个无聊之人,作些无聊之事。也许在有些人看来,在大学里面能在社团里面混个一官半职是对自己将来走上领导岗位的锻炼吧(冠冕堂皇的理由),所以有了那些看似正式的代表大会,选举,还有候选人之间貌似公正的角逐。

所以说,大学里面我几乎是个边缘人,与所谓的主流完全脱开的人,试验室,教室,工作室,图书馆,运动场,学习锻炼,简简单单。按我的想法,所谓的那些可以锻炼能力的活动,以致于后来上纲上线的课外活动加分是为那些从小心理有问题的,不善于交际的人准备的,有自己想法的人根本不用管那些。想来好笑,那个所谓的大学生素质拓展认证后来造成了一个什么样的状况呢,有些人为了多得分,疯狂的去认证,拿着胸卡到各个社团活动点现一下。以致于,某些学生社团都用素质拓展加分一项来吸引参加的学生。对于我而言,根本想不通,花如此多的时间在与自己无关的Topic之上,为什么不找到自己的追求?科研,兴趣,或者就只是学习而已。而某些人为自己加官晋爵的体制,所谓的仿照清华建立的体制,不是在害人是在干什么?至少,很多学生们为获得素质拓展加分连诚信都放弃!

讲得有点远了,虽然从学校毕业不到一年,但是很多学生时代的事情已经模糊了,我只记得我是我很"愤青",但是没有那么极端,守着自己的清规戒律过日子。"穷则独善其身,达则兼济天下",这是我很多年的座右铭。然而大多数的时间,我守在了前半句上面,最终能"达"吗,再说吧,为天下人而达,想来确实是一件很伟大的事情,所以我愿意为之付出。

记得大概是大三的时候,上计算机控制,张老师有一节课讲到,我们自动化出身的人,如果要当官,那么肯定都是将才。是啊,将才,我现在想成为的人才。当领导,对我最大的吸引力在于,"可以用一个团队的力量来达到一个目标"。一个人,太势单力薄。管人,应该也是一门科学,但是似乎是神乎其神的东西,做决断不能通过波特图来分析,我不知道我能否真正做好,但是就是想,很多很多的原因让我很想。

那天跟小小谈我的疑惑,她说当她那会参加工作的时候,她也想着能做出一番什么大事业,但是大多数人注定了选择平凡甚至是平庸的过这一生,过两年就好了,适应了就好了,国企就是这个样子。但是如果真是那么去适应,我想我也注定了平庸,然而我还年轻,如果这样那么我这一辈子都毁了。

2007年3月4日星期日

A Handsome wife

小小跟我在Skype上说她的学生居然有人讲出Handsome wife这样的句子来,快要把她逼疯了,我乐了,我说搭配也没有错,如果他们的Wife都像你一样就可以那么形容了,并且跟她解释了一通,handsome也可以用来形容女人,如果这个女人比较健壮就可以,而对于形容‘哪里都大的小小’,自然合适不过了。她威胁我要挂掉Skype。她说她叫那些学生都叫“大叔”,呵呵,她总是让人乐呵。


认识小小是在碧花园培训的最后一个星期,开始熟识的时候,却要分开了,相见恨晚。小小是乘务员,所以比较高,比我只矮一点,大概有170的样子。很爽快的一个女孩子,很“刷拉”,武汉话里面就是很麻利的意思。我打心眼里不喜欢说话做事拖泥带水的人。她还会弹钢琴,10级,这点很让我看不出来,怎么也不会想到such a big girl,会弹钢琴,怎么看也像运动型的 :)。记得那天早晨从客房里面出来去吃早餐的时候,不知道由于什么事情说到了这个,着实让我对走在旁边的这个big big girl 刮目相看。


上次去广州学RT的时候,碰到那边的教员,说起小小,他们介绍说小小叫学生们大叔的事情,原来还真有这事,我忍俊不禁。

2007年3月1日星期四

理解Hibernate SessionFactory.getCurrentSession

刚开始用Hibernate,之前的有些理解是错误的,今天又纠正一个;对于getCurrentSession虽然看了文档
Obtains the current session. The definition of what exactly "current" means controlled by the CurrentSessionContext impl configured for use
但是还是以为向操作普通session一样的去操作,结果造成程序运行出错。
通过getCurrentSession返回的session是commit之后自动关闭的,不能再调用session.close方法。如下面的代码是错误的:
 /* (non-Javadoc)
  * @see com.csair.hunan.pss.web.dao.UserManage#saveUser(com.csair.hunan.pss.web.dao.User)
  */
 public boolean saveUser(User user) {
  Session session = adapter.getSessionFactory().getCurrentSession();
  Transaction tx = null;
  try {
   tx = session.beginTransaction();
   session.saveOrUpdate(user);
   tx.commit();
   return true;
  } catch (HibernateException he) {
   if(tx != null) {
    tx.rollback();
   }
   return false;
  } finally {
   session.close(); 
  }
 }
解决的方法是把finally块的代码去掉,要么获取session的方式改为openSession();当然前者的优势明显。
仔细看了hibernate的参考文档:
The "current session" refers to a Hibernate Session bound by Hibernate behind the scenes, to the transaction scope. A Session is opened when getCurrentSession() is called for the first time and closed when the transaction ends. It is also flushed automatically before the transaction commits. You can call getCurrentSession() as often and anywhere you want as long as the transaction runs. To enable this strategy in your Hibernate configuration:
见:http://www.hibernate.org/42.html
我仍不确定我上面的代码写得是否正确,但是暂时来看执行是不成问题的,说是currentSession绑定到Java Thread,我单线程的程序呢,应该没有问题,参考文档中对于getCurrentSession的用法是这样的:
try {
    factory.getCurrentSession().beginTransaction();

    // Do some work
    factory.getCurrentSession().load(...);
    factory.getCurrentSession().persist(...);

    factory.getCurrentSession().getTransaction().commit();
}
catch (RuntimeException e) {
    factory.getCurrentSession().getTransaction().rollback();
    throw e; // or display error message
}
它在每一行代码都用getCurrentSession取得当前的session, 而我的代码中是在最开始取得这个session,现在疑惑的是如果是多线程的程序,那么通过我那样获得的currentSession是否还有效?