摘要: 问题原因:我的jdk是1.7的,刚开始安装完zookeeper3.5.5之后,总是启动不了。查看所有的配置信息都没有问题。最后怀疑是jdk版本和zookeeper3.5.5不兼容,所以换了一个zookeeper3.4.14,终于启动成功了。好坑,就这个问题都弄了好久,郁闷! 阅读全文
posted @ 2019-08-09 17:34 蜗牛背着马 阅读(1633) 评论(0) 推荐(0) 编辑
摘要: 问题原因:我的jdk和tomcat都放在root目录下新建的user目录中,但是在配置JAVA_HOME时,路径没有配对。配置如下: 由于,user是在root目录下,并不是在/目录下,所以,导致tomcat找不到JAVA_HOME ,当然也就找不到/user/tomcat/tomcat8/logs 阅读全文
posted @ 2019-08-08 09:01 蜗牛背着马 阅读(689) 评论(0) 推荐(0) 编辑
摘要: 上一篇跟踪了bean的创建过程,接下来,我们继续跟踪bean的属性填充的过程。先回到doCreateBean方法,代码如下: 对于bean的创建,IOC容器其实是采用反射和cglib技术来生成的,我们可以跟踪一下createBeanInstance方法: 1、如果指定了工厂方法,则使用工厂进行创建; 阅读全文
posted @ 2019-07-01 22:55 蜗牛背着马 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 上一篇主要是跟踪了IOC容器对bean标签进行解析之后存入Map中的过程,这些bean只是以BeanDefinition为载体单纯的存储起来了,并没有转换成一个个的对象,今天继续进行跟踪,看一看IOC容器是怎样实例化对象的。 我们都使用过以下代码: 这样我们就能获取到user对象了,所以,不难想象, 阅读全文
posted @ 2019-06-26 23:06 蜗牛背着马 阅读(789) 评论(0) 推荐(0) 编辑
摘要: 上一篇跟踪了IOC容器对配置文件的定位,现在我们继续跟踪代码,看看IOC容器是怎么加载和注册配置文件中的信息的。开始之前,首先我们先来了解一下IOC容器所使用的数据结构 BeanDefinition,它是一个上层接口,有很多实现类,分别对应不同的数据载体。我们平时开发的时候,也会定义很多pojo类, 阅读全文
posted @ 2019-06-24 23:22 蜗牛背着马 阅读(648) 评论(1) 推荐(0) 编辑
摘要: 学习优秀框架的源码,是提升个人技术水平必不可少的一个环节。如果只是停留在知道怎么用,但是不懂其中的来龙去脉,在技术的道路上注定走不长远。最近,学习了一段时间的spring源码,现在整理出来,以便日后温故知新。 IOC容器是spring最核心的模块之一,是整个spring体系的基石,spring其他模 阅读全文
posted @ 2019-06-23 17:04 蜗牛背着马 阅读(1305) 评论(3) 推荐(0) 编辑