精华帖 (4) :: 良好帖 (2) :: 新手帖 (5) :: 隐藏帖 (2)
|
|
---|---|
作者 | 正文 |
发表时间:2009-11-08
huangtian549 写道 对这本书很期待! 如果12月上旬出版,可能已经定稿了,但还想提个建议, 希望书中多分析一下代码为什么这么实现,不为了读代码而读代码,多告诉大家一下框架这么设计有什么好处,明白了好处以后,才能在以后设计出适合自己的框架,提高自己的代码质量,我想可能是大家对spring源代码感兴趣的原因,(也许作者就是这么写的,那就多说了) 反正我是对一本能解析Spring源码的书是很期待的,出版后我会立刻去买的。 刚刚脱稿,已经到编辑那里了,是在平时手记基础上做的挖掘。意图是希望理出一条SPRING实现的基本脉络,依托源代码的相关解读,毕竟源代码是最可信赖的。 |
|
返回顶楼 | |
发表时间:2009-11-09
anykey1009 写道 gogole_09 写道 anykey1009 写道 public abstract class AbstractXmlApplicationContext extends AbstractRefreshableConfigApplicationContext { public AbstractXmlApplicationContext() { } public AbstractXmlApplicationContext(ApplicationContext parent) { super(parent); } //这里是实现loadBeanDefinitions的地方 protected void loadBeanDefinitions(DefaultListableBeanFactory beanFactory) throws IOException { // Create a new XmlBeanDefinitionReader for the given BeanFactory. // 创建 XmlBeanDefinitionReader,并通过回调设置到 BeanFactory中去,创建BeanFactory的使用的也是 DefaultListableBeanFactory。 XmlBeanDefinitionReader beanDefinitionReader = new XmlBeanDefinitionReader(beanFactory); // Configure the bean definition reader with this context's // resource loading environment. // 这里设置 XmlBeanDefinitionReader, 为XmlBeanDefinitionReader 配置ResourceLoader,因为DefaultResourceLoader是父类,所以this可以直接被使用 beanDefinitionReader.setResourceLoader(this); beanDefinitionReader.setEntityResolver(new ResourceEntityResolver(this)); // Allow a subclass to provide custom initialization of the reader, // then proceed with actually loading the bean definitions. // 这是启动Bean定义信息载入的过程 initBeanDefinitionReader(beanDefinitionReader); loadBeanDefinitions(beanDefinitionReader); } protected void initBeanDefinitionReader(XmlBeanDefinitionReader beanDefinitionReader) { } 这个类一直没看明白,跟上下有什么联系吗? 继续研究中。。。够我学一阵的了 PS:我是spring新手,这个类我看是个abstract类啊,那么this指的什么呢?顺便帮我补下java基础^_^ 一般来说,在抽象类中使用this 通常是获取的子类吧, 我记得struts1.x的DispatcherAction类也使用过类似的技巧来获取它指定执行的是哪个方法. 附件有我以前自己仿的一个例子,可以下去看看,写得比较简单,只是描述了下大概的实现过程。 嗯。。谢谢啊,例子我看过了,又学到了点东西[color=red],貌似反射在框架中用的挺多的吧。。。 PS:楼主有没有出视频的意向。。哈哈,我看这大篇幅的文字,头都大了[/color] 曾经听一个人说过,框架的基本实现无非就是 反射+xml ,虽然有点牵强,但是观看大部分框架,这两部分确实实实在在都存在的。 楼主出视频的话,相信又可以带我们升一个层次啦。…… 哈哈,所以同样支持在出书的基础上,加上视频版解说,比较很多东西来说,语言总比文字直观很多。 一言胜千文啊。 |
|
返回顶楼 | |
发表时间:2009-11-10
出视频是个好主意,不知道作者是否有时间操作?
|
|
返回顶楼 | |
发表时间:2009-11-15
linux1689 写道 出视频是个好主意,不知道作者是否有时间操作?
呵呵,现在还是集中精力,先把要出的书弄好吧。只有两点希望,一是和大家分享,二是虽然网上已经有不少的资料,但对我们这些从小就习惯从书本学习的人,有一本书,看起来会舒服些。但是,买书需要读者花钱,这可和网上不一样,所以责任感觉不一样啊,“无功不受禄”,还是希望能够尽力做到物有所值吧。 |
|
返回顶楼 | |
发表时间:2009-12-10
代码基本可以看懂,但看完没撒感觉,没有那种全局感。可能功力还是不够吧。
|
|
返回顶楼 | |
发表时间:2009-12-11
zhangyou1010 写道 代码基本可以看懂,但看完没撒感觉,没有那种全局感。可能功力还是不够吧。
惭愧惭愧,是我写得大局感不够。我个人感觉,线是串起来了,面却没有形成。的确是功力的问题,要努力啊! |
|
返回顶楼 | |
发表时间:2009-12-11
写得真好,不知道楼主能不能写一篇关于阅读开源框架源代码具体方法的文章,新手不知道如何下手
|
|
返回顶楼 | |
发表时间:2009-12-11
baishuo491 写道 写得真好,不知道楼主能不能写一篇关于阅读开源框架源代码具体方法的文章,新手不知道如何下手
谢谢鼓励啊!我是使用ECLIPSE+SVN来从Spring的代码库里下载的,基本的过程,我都写在书里了,到时书上市了,去翻翻看看就行了,大概有一章吧,篇幅不多,基本上算是我看源代码的一点经验吧。 |
|
返回顶楼 | |
发表时间:2009-12-29
anykey1009 写道 public abstract class AbstractXmlApplicationContext extends AbstractRefreshableConfigApplicationContext { public AbstractXmlApplicationContext() { } public AbstractXmlApplicationContext(ApplicationContext parent) { super(parent); } //这里是实现loadBeanDefinitions的地方 protected void loadBeanDefinitions(DefaultListableBeanFactory beanFactory) throws IOException { // Create a new XmlBeanDefinitionReader for the given BeanFactory. // 创建 XmlBeanDefinitionReader,并通过回调设置到 BeanFactory中去,创建BeanFactory的使用的也是 DefaultListableBeanFactory。 XmlBeanDefinitionReader beanDefinitionReader = new XmlBeanDefinitionReader(beanFactory); // Configure the bean definition reader with this context's // resource loading environment. // 这里设置 XmlBeanDefinitionReader, 为XmlBeanDefinitionReader 配置ResourceLoader,因为DefaultResourceLoader是父类,所以this可以直接被使用 beanDefinitionReader.setResourceLoader(this); beanDefinitionReader.setEntityResolver(new ResourceEntityResolver(this)); // Allow a subclass to provide custom initialization of the reader, // then proceed with actually loading the bean definitions. // 这是启动Bean定义信息载入的过程 initBeanDefinitionReader(beanDefinitionReader); loadBeanDefinitions(beanDefinitionReader); } protected void initBeanDefinitionReader(XmlBeanDefinitionReader beanDefinitionReader) { } 这个类一直没看明白,跟上下有什么联系吗? 继续研究中。。。够我学一阵的了 PS:我是spring新手,这个类我看是个abstract类啊,那么this指的什么呢?顺便帮我补下java基础^_^ 这个类我也没怎么看懂放在这儿有什么意思,可能是为了举例说明“IoC容器的高级表现形式”的吧,希望楼主给出明确的解答。 |
|
返回顶楼 | |
发表时间:2010-01-01
这个类是ApplicationContext的基类,封装了很多基本的上下文处理过程。
|
|
返回顶楼 | |