Archive for May, 2007
May 29, 2007
key words: 读书
这次出差坐火车,感觉还是有收获,买了两本 ruby的书 <应用Rail进行敏捷web开发>和<Ruby on rails快速开发>,感觉坐火车的好处就是时间比较充足,人也比较放松,在20多个小时的旅途中居然把两本书都看了一遍,呵呵,看来古人说的读万卷书,行万里路还是有点道理 
兄弟们,你最近在读什么书呢?
大家一起分享分享啊
说一下我最近在读的书:
于丹的论语:看了一半的视频,一半的书,感觉于丹的风格我不是太喜欢,有点矫情 
赢 :关于GE,关于管理,原来已经读了一遍,最近重温一下,还是有不少的收获
易中天的三国:看的是视频,感觉易中天是个人物,至少从听者的角度觉得效果不赖
一直对快速开发有自己的一些想法,也一直在搜集一些资料,所以最近把关注点也移到了RoR,效果感觉不错,适合中小企业的快速开发,至少在一个全新的小项目中是可行的,愿意与大家一起交流。
最近在关注 林伟贤,感觉从他那里能学到很多东西,有激情,有思想,有方法,兄弟们有空多看看 :)
过段时间打算买一个空间,听说dreamhost不错,支持 php和ruby,正合吾意,大家有什么好的想法可以推荐下啊。
比较罗嗦了今天,凑合点吧.
VN:F [1.6.3_896]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.3_896]
May 24, 2007
最近突然对Rails产生了兴趣,花了2天时间把这本《应用Rails进行敏捷Web开发》看完了,感觉不错。
在书的开始的地方介绍了开发的大致流程,值得借鉴:(该事例是一个购物车)
1。user case
就是有哪些参与者或者角色,本例是seller,buyer
2. page flow
页面流转,即各个角色的页面流转过程会有哪些。
购买者的流程

商家的流程

3.data:数据

then,Let’s code
VN:F [1.6.3_896]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.3_896]
May 13, 2007
key word : hibernate,dao
一。简化hibernate
首先hibernate是一个优秀的ORM工具(此话鉴定为废话:))
其次,按照20/80的规律,有80%的问题不需要那20%学习起来比较麻烦的东西。
很多人在用hibernate的时候一定把关系作为精华来学习,比如一对多,多对一,以及多对多,认为只有熟练运用这个才是对hibernate的真正掌握。
说实话,这个想法从技术的角度讲有点道理,问题是很多人对这些始终是一头雾水,反正不要好看,我现在仍然是一头雾水,今天我终于给自己
解放了出来,我回头去看自己的项目,发现N多的时候100%的不要关系(在 hibernate中)也不会出人命,而且效果很好。
现在,每个mapping文件中没有了set,list,map,我相信一定有N多人说我这个不符合OO什么的,不过大家反过来想,在我的项目组中会有一个明显
的好处就是我将问题简化了,
大家都会做,比如Org与User的关系,1:N的关系,我不用考虑这个,直接手工去维护,dao.save(org);user.setOrgId(“11″);dao.save(user);
有一段时间我依次问各个项目组,你们的hibernate中用到了关联操作了么,回答清一色的“NO”,看来大家都在无意识的回避这个陷阱,呵呵,
很合吾意。
二.简化dao
可能是受到appfuse的影响,一个service就有一个dao,现在从实际的角度来看仍然觉得没有太大的必要,当然,如果你是类似测试驱动的想法
那么可能另当别论。现在我更喜欢一个通用的dao全部搞定,确实舒服。
service中的操作全部调用通用dao(getObjects(),saveObject(),updateObject(),removeObject())

public BeanValue saveItem(RequestMap rMap)
{
BeanValue value = null;

try
{
log.info(“=====begin to save alexItem object“);
value = new BeanValue();
AlexItem alexItem = (AlexItem) BeanUtil.convertObject(AlexItem.class, rMap.getMap());
dao.saveObject(alexItem);
log.info(“=====end to save alexItem object“);
value.addRequestMap(“admin“,alexItem);
value.setForword(“success“);

} catch (BaseException e)
{
value.addErrorMap(“errorName“,e);
value.setForword(“error“);
}
return value;
}
愿意听听各位在项目中的做法。
VN:F [1.6.3_896]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.3_896]
May 8, 2007
key words: jstl,struts,log4j
1.jstl
jstl的配置参考这篇文章:
http://foolmouse.cnblogs.com/archive/2006/04/20/380695.html
在iAS904服务器上的jstl的版本只能用1.0 的
“standard.jar和jstl.jar文件拷贝到\WEB-INF\lib\
”
2.struts
struts的配置主要是把 相关jar文件(struts.jar,struts-legacy.jar)拷贝到\WEB-INF\lib
,另外,struts需要用到一些apache的commons的包(commons-beanutils.jar,commons-collections-2.1.1.jar,commons-digester.jar)
3.log4j
log4j经常有莫名其妙的问题,有时候能出来log有时候又不能出来log,最后把log4j.xml统一改为log4j.properties,暂时看好像有效果。
4。web.xml配置
<taglib>
<taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/c-1_0.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
今天终于先在iAS里部署完了struts,下一步把hibernate放进去,上次部署过一次,没有成功,据说是和toplink有点冲突。 知道的兄弟分享下oc4j中部署hibernate
VN:F [1.6.3_896]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.3_896]