Java知识点16 Spring创建IOC容器的两种方式

1、直接得到 IOC 容器对象

 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");

封装起来:

 1 public class ApplicationContextUtil {
 2     private static ApplicationContext applicationContext = null;
 3     public ApplicationContextUtil(){
 4         //无参构造器,可以不用写
 5     }
 6
 7     static{
 8         applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
 9     }
10
11     public ApplicationContext getApplicationContext() {
12         return applicationContext;
13     }

使用时,直接用类名.方法调用即可:ApplicationContextUtil.ApplicationContextUtil();

2、通过工厂类得到 IOC 容器创建的对象

1 Resource resource = new ClassPathResource("applicationContext.xml");
2 BeanFactory factory = new XmlBeanFactory(resource);

封装起来:

 1 public class ApplicationContextFactoryUtil {
 2     private static BeanFactory beanFactory = null;
 3     public ApplicationContextFactoryUtil(){
 4
 5     }
 6
 7     static{
 8         Resource resource = new ClassPathResource("applicationContext.xml");
 9         beanFactory = new XmlBeanFactory(resource);
10     }
11
12     public BeanFactory getBeanFactory() {
13         return beanFactory;
14     }
15 }

使用时,直接用类名.方法调用即可:ApplicationContextFactoryUti.getBeanFactory();


原创作者:DSHORE

作者主页:http://www.cnblogs.com/dshore123/

原文出自:https://www.cnblogs.com/dshore123/p/11682126.html

欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!

原文地址:https://www.cnblogs.com/dshore123/p/11682126.html

时间: 2024-08-02 05:44:10

Java知识点16 Spring创建IOC容器的两种方式的相关文章

spring创建连接池的几种方式

spring使用连接池有很多种方式,jdbc(不使用连接池),c3p0,dbcp,jndi,下面将分别贴代码介绍这几种:  1.jdbc方式 使用的是DriverManagerDataSource,DriverManagerDataSource建立连接是只要有连接就新建一个connection,  根本没有连接池的作用 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManag

Spring Boot 整合 Shiro ,两种方式全总结!

在 Spring Boot 中做权限管理,一般来说,主流的方案是 Spring Security ,但是,仅仅从技术角度来说,也可以使用 Shiro. 今天松哥就来和大家聊聊 Spring Boot 整合 Shiro 的话题! 一般来说,Spring Security 和 Shiro 的比较如下: Spring Security 是一个重量级的安全管理框架:Shiro 则是一个轻量级的安全管理框架 Spring Security 概念复杂,配置繁琐:Shiro 概念简单.配置简单 Spring

19、Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition

Java并发编程:线程间协作的两种方式:wait.notify.notifyAll和Condition 在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权.因为生产者如果不释放对临界资源的占用权,那么消费者就无法消费队列中的商品,就不会让队列有空间,那么生产者就会一直无限等待下去.因此,一般情况下,当队列满时,会让生产者交出对

Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition

在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权.因为生产者如果不释放对临界资源的占用权,那么消费者就无法消费队列中的商品,就不会让队列有空间,那么生产者就会一直无限等待下去.因此,一般情况下,当队列满时,会让生产者交出对临界资源的占用权,并进入挂起状态.然后等待消费者消费了商品,然后消费者通知生产者队列有空间了.同样地,当

iOS中创建单例的两种方式

刚刚开始做iOS开发的时候,不知道怎么创建单例,在网上搜的也大多数都不太全,所以总结了一下创建单例的两种方式 首先在.h文件中声明类方法 1 +(instancetype)sharedUtils; 然后在.m文件中实现它,实现的方法有两种 第一种,在创建一个对象时先判断在程序中有没有创建过这个对象 1 static PublicUtils *DefaultManager = nil; 2 3 +(instancetype)sharedUtils 4 { 5 if (!DefaultManager

java的取出map里所有元素的两种方式

/* * 取出map元素的两种方式 */package com.map.test; import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set; public class Test1 { public static void main(String[] args) { // TODO 自动生成的方法存根 Map<Integer,String> mp=new HashMa

创建安卓模拟器的两种方式及常用Android命令介绍

创建安卓模拟器有以下两种方式: 1>通过图形界面创建,在Eclipse中单击Windows->Android Virtual Device Manager启动图形界面窗口 2>如果用的不是Eclipse,则可以切换到~/tools/文件夹,在终端执行"android avd",单击Create 按钮,则可以创建一个新的模拟器. 2.使用镜像功能加快模拟器的启动速度. 也许你在启动Android模拟器重新启动的速度很慢,因此新增了一个保存和恢复模拟器状态的镜像功能,用以

【分享】有效创建Oracle dblink的两种方式

两台不同的数据库服务器,从一台数据库服务器的一个用户读取另一台数据库服务器下的某个用户的数据,这个时候可以使用dblink. 其实dblink和数据库中的view差不多,建dblink的时候需要知道待读取数据库的ip地址,ssid以及数据库用户名和密码. 创建可以采用两种方式 步骤/方法 已经配置本地服务 以下是引用片段: create public database link fwq12 connect to fzept identified by neu using ‘fjept’ CREA

创建 Spring Boot 项目常用的两种方式

在开发中,常用的创建的 Spring Boot 项目方式有两种,一种是使用 Spring Initializr , 一种是创建一个 Maven 工程,导入 Spring Boot 的依赖 使用 IDEA 的 Spring Initializr 的方式 选择 IDEA 的 File -> New -> Project 选择 Spring Initializr ,如下图: 在 Project Metadata 页面,输入 Group, Artifact ,Version, Name, Descri