一、main的运行入口

ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("spring.xml");

说明:调用这个程序后,程序会扫描spring.xml文件,并加载其中包含的类,会执行其中的构造函数。

二、配置spring.xml文件

有两种:指定类名称 和 指定标签名称

1. 指定类名称:

<bean id="one" class="spring_test.One">
<constructor-arg name="one" value="one"/>
</bean>

2. 指定标签名称:

<context:component-scan base-package="spring_test"/>

说明:

第二种方式会很简洁,但需要在对应的类前面加上这个标签:@Component

三、原理

Spring本身就是采用了IOC和AOP的结合,其中IOC指的是反射,AOP指的是动态代理。

Spring初始化机制的更多相关文章

  1. Spring Boot 2.5.0 发布:支持Java16、Gradle 7、Datasource初始化机制调整

    今年520的事情是真的多,娱乐圈的我们不管,就跟DD一起来看看 Spring Boot 2.5.0 的发布吧!看看都带来了哪些振奋人心的新特性和改动! 主要更新 支持 Java 16 支持 Gradl ...

  2. 深入理解Spring事件机制(一):广播器与监听器的初始化

    前言 Spring 从 3.x 开始支持事件机制.在 Spring 的事件机制中,我们可以令一个事件类继承 ApplicationEvent 类,然后将实现了 ApplicationListener ...

  3. spring 初始化之后执行的方法

    Spring初始化完成后直接执行一个方法,初始化数据(解决方法并执行两次) 在做WEB项目时,经常在项目第一次启动时利用WEB容器的监听.Servlet加载初始化等切入点为数据库准备数据,这些初始化数 ...

  4. Spring初始化ApplicationContext为null

    1. ApplicationContextAware初始化 通过它Spring容器会自动把上下文环境对象调用ApplicationContextAware接口中的setApplicationConte ...

  5. Hibernate工作原理及为什么要用?. Struts工作机制?为什么要使用Struts? spring工作机制及为什么要用?

    三大框架是用来开发web应用程序中使用的.Struts:基于MVC的充当了其中的试图层和控制器Hibernate:做持久化的,对JDBC轻量级的封装,使得我们能过面向对象的操作数据库Spring: 采 ...

  6. Spring事件机制详解

    一.前言 说来惭愧,对应Spring事件机制之前只知道实现 ApplicationListener 接口,就可以基于Spring自带的事件做一些事情(如ContextRefreshedEvent),但 ...

  7. spring工作机制及为什么要用?

    spring工作机制及为什么要用?1.spring mvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作.2.DispatcherSer ...

  8. Spring(五)Spring缓存机制与Redis的结合

    一.Redis和数据库的结合 使用Redis可以优化性能,但是存在Redis的数据和数据库同步的问题. 例如,T1时刻以将 key1 保存数据到 Redis,T2时刻刷新进入数据库,但是T3时刻发生了 ...

  9. Spring 事务机制详解

    原文出处: 陶邦仁 Spring事务机制主要包括声明式事务和编程式事务,此处侧重讲解声明式事务,编程式事务在实际开发中得不到广泛使用,仅供学习参考. Spring声明式事务让我们从复杂的事务处理中得到 ...

随机推荐

  1. C#复制粘贴

    用C#程序复制粘贴非常简单,这里为了实用,只介绍对文字的操作,其他情况类似: Clipboard.SetText(“我是需要复制到系统剪贴板的文字”); 执行以上代码后,即可ctrl+V进行粘贴.是不 ...

  2. JAVA环境变量安装

    需配置的系统环境变量参数: JAVA_HOME:C:\Program Files\Java\jdk1.8.0_60 CLASS_PATH: ;%JAVA_HOME%\lib;%JAVA_HOME%\l ...

  3. C可变参数

    https://www.cnblogs.com/pengdonglin137/p/3345911.html#_label0

  4. linux配置sudo

    编辑/etc/sudoers或者直接使用root用户运行visodu 添加如下两行:oracle  ALL=(ALL)       NOPASSWD: ALLoinstall        ALL=( ...

  5. February 16 2017 Week 7 Thursday

    Other men live to eat, while I eat to live. 很多人为食而生存,而我为生存而食. Just the same, either you eat to live ...

  6. Prototype Pattern

  7. VMware workstation 虚拟机安装帮助文档(以windows server 2003为例)

    本次安装以Windows server 2003为例: 1.在桌面上双击VMware快捷方式打开,并点击文件>新建虚拟机 2.这里选择默认的“典型”,点击下一步 3.选择浏览,找到windows ...

  8. codeforces 814E An unavoidable detour for home

    题目链接 正解:$dp$. 感觉这道题就是中国象棋的加强版..我们要发现一些性质. 首先就是这个图肯定是一个按照$bfs$序分层的图,且每个点只往自己上面那一层连了一条边,每个点不可能向自己的上面超过 ...

  9. Html 列表实现展开和收起

    HTML中,点击列表元素,在其下展开更多的小选项.不点的时候是收起来的.就是实现路由器左边的菜单那样的功能.怎么实现,知道的指点一下,谢谢了!! 最常见的方法是通过Javascript控制某标签的CS ...

  10. zip 函数

    zip 函数,看上去是打包的意思,其实功能是将多个可迭代对象,组合成一个个元组. zip(iter1,iter2) a,b = zip(*zip(iter1,iter2)) a = [1,2,3] b ...