java自己实现ioc_【JAVA实例】自己动手实现IOC和MVC(一)

近看了一下

spring3 ioc的实现是基于Java annotation 或者xml配置的 ,现在大多数的人越来越喜欢annotation了,但是网上关于annotation和xml配置的说法是众说纷纭,各有各的好坏,本人比较喜欢annotation ,用起来简单方便,所以咱们要实现ioc是基于java annotation

1、 spring是怎么把你的注释的class实例化的:

① spring 会扫描你配置的package以及package子包下的所有class是否标注有annotation(如:@Repository,@Service,@Controller)

② spring 然后他会把扫描的这些类得信息赋值给一个类似于

③ 此时spring会有List 里面装你需要进行实例化的class的信息的BeanDefinition.java,接着就是循环这个list,利用java反射机制实例化class,实例的过程会把所有实例化完的bean放在一个Map,供以后进行使用。

2、下面介绍一下整个Project的结构

712460076321d6ec354e91de224dd91a.gif

com.ajunframework.beans主要是包含对bean的操作的类

com.ajunframework.beans.annotation主要是定义一些java annotation 用于扫描进行实例化bean

com.ajunframework.beans.applicationContext用于管理bean上下文

com.ajunframework.beans.factory工厂包 提供一些操作实例化之后bean的操作

com.ajunframework.beans.definition 用于定义bean的一些信息的class

com.ajunframework.beans.scan 用于扫面package以及package子包下的所有class

com.ajunframework.beans.utils一些相关操作辅助class

这一节主要是介绍整个系列的背景和整个project的结构以及spring ioc原理

下一节开始介绍具体的实现过程

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值