10月28日appfuse培训日记
2006-10-29 21:37 java ee spring 阅读(219) 评论(0) 编辑 收藏 举报今天是梁言兵老师讲解Appfuse这个整合了spring,hibernate,spring mvc,velocity,sitemesh,ajax多个框架的开源项目,梁言兵老师是学员们心中的偶像和大牛人,虽然以前有些地方听不懂,但大家对他崇拜极了,呵呵!
他首先讲解了上次没讲完的AjaxTable这个项目中的一些细节,然后就开始了Appfuse的讲解,梁老师主要是带着大家把Appfuse的实现细节和代码走一遍,他今天的课讲得很好,看来他已经找到了给与他完全不在一个档次的学员讲课的感觉了。
完善了AjaxTable的更多功能。带领大家分析了Appfuse的源码,其中接触的新知识包括:Sitemesh,spring的<bean>元素的parent属性。
可以把resource目录加入到eclipse的build的源目录中,这样,它里面的资源文件就会被直接拷贝到编译的结果classpath目录下。
messageResource可以设置一个basenames属性来设置多个资源文件,每个文件之间用逗号分隔。
讲解spring的return modelView时,用原始的request.setAttribute和RequestDispatcher.forward实现一下同样功能,这样学员们就很容易知道ModelView的工作原理了。
让displayTag显示中文信息,从jar包中提取出displayTag.properties文件,然后照写一个displayTag_zh_CN.properties文件即可,写成中文以后,再用native2Asii进行转换,梁老师用的eclipse好像自带这种转换功能,不知道是他的那个wst插件的功劳,还是eclipse自带的功能。
传递给buffalo的请求方法的参数可以是一个自定义对象(用formToBean创建对象,然后传递给remoteCall方法),方法返回的结果也可以是一个自定义对象。
在myeclipse下可以保存jsp时可以自动完成发布。
分页不是用setFetchSize,而是用setMaxResults。
我个人想琢磨的一个细节:
TransactionManager在底层是如何起作用的,不考虑调用JTA的情况,我想它一定应该与Connection形成关联,而Session也是与Connection关联,这个安排一些基础的学员看看相关的hibernate与ibatis的源码。