首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
Java持续实践
掘友等级
Java开发
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
10
文章 10
沸点 0
赞
10
返回
|
搜索文章
最新
热门
Java开发面试题: 谈谈可重入锁ReentrantLock?
ReentrantLock 定义 ReentrantLock 根据其jdk给的注释定义如下: 即代表ReentrantLock是可重入的互斥锁. 可重入代表已加锁的线程, 可以重复加锁. 可重入的最大
Spring源码解析之 Bean与BeanDefinition详解
不需要为了创建Spring的Bean 而在Java类上做额外的限制, 体现了Spring的低侵入. 在Spring中, 是根据配置, 生成用来描述Bean的BeanDefinition. 类似于Java中描述类的Class. id为user2的bean , 定义了一个facto…
Spring源码解析之 IOC的主流程与注解加载bean的验证
Entrance类改造成为一个配置类. 启动容器后, 便可以获取所有已经加载的bean的名称, 以及通过bean 的名称调用getBean方法去获取bean. 运行main方法后, 打印如下, 可以看到成功加载了bean , 并且也通过getBean方法获取到了实例和调用了其成…
Spring 源码解析之 实现容器的依赖注入 DI
如果一个类中, 依赖了另外一个类, 如下MainPageController 依赖了HeadLineShopCategoryCombineService . 那么就要保证HeadLineShopCategoryCombineService 这个类是初始化好的, 否则调用head…
Spring源码之 Bean实例的作用域
prototype 原型模式, 每次通过getBean方法获取Bean时, 都将产生一个新的对象. request 每次请求时, 都会产生一个新的实例. 只有在web应用中使用时, 才会有效 globalsession 每个全局的http session . 使用 sessio…
Spring源码之 实现容器的增删改查
其中 通过接口或父类获取实现类或子类的Class 集合这个方法, 有用到Class类的isAssignableFrom方法, 该方法用于判断是否是某个类的超类, 特殊情况: A.isAssignableFrom(A) 返回的也是 true. 完整的测试用例如下 . 其中有用到T…
Spring源码之 容器的载体和容器的加载
使用如下的枚举创建单例容器 . 保存Class 对象以及实例的载体 . 对外提供容器的操作方式, 便于 客户端操作载体中的对象. 使用ConcurrentHashMap来保存目标类型的对象和实例. ConcurrentHashMap并发性强, JDK8摒弃了之前的分段锁, 采用…
Spring 源码解析之 防止反射和序列化破解的单例写法
如下的类, 使用枚举的内部类方式创建单例. 在枚举中的构造方法创建对象 . 编写如下的测试, 分别通过类名调用静态方法, 和通过反射来创建对象. 结果如下, 可以看到是两个一样的对象. 在EnumStaringSingleton类中, 写如下的main方法, 该方法内直接通过获…
Spring 源码解析之 反射破解单例模式
需要同一个容器, 将所有的目标对象管理起来, 容器需要用单例来实现, 因此就要用到单例模式. 常见的单例模式, 一般分为懒汉式和饿汉式.
Spring 源码之实现Class对象的提取
获取某个包下的类集合 代码如下 . 通过类加载器获取到加载的资源信息 , 是通过classLoader.getResource获取, 传入包路径, 注意要把. , 转化为"/". 获取类的集合: 主要是 过滤出文件类型, 目前只处理file类型的协议, 再获取包下的实际绝对路径…
下一页
个人成就
文章被点赞
8
文章被阅读
15,244
掘力值
468
关注了
33
关注者
1
收藏集
8
关注标签
1
加入于
2018-11-17