Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >IOC容器入门案例

IOC容器入门案例

作者头像
框架师
发布于 2021-03-05 14:44:23
发布于 2021-03-05 14:44:23
42800
代码可运行
举报
文章被收录于专栏:墨白的Java基地墨白的Java基地
运行总次数:0
代码可运行

IOC容器入门案例

  • 创建maven项目,导入坐标
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
         http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.mobaijun</groupId>
    <artifactId>spring_mvc</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <!-- spring的IOC坐标 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.0.2.RELEASE</version>
        </dependency>
        <!--导入junit测试-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>
    </dependencies>
</project>
  • 创建User对象
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package com.mobaijun;

/**
 * @Author: Auser·杰
 * Development: IntelliJ IDEA 2018.2.4 x64
 * ClassName: User
 * ClassCreateDate: 2020/1/3 14:15
 * 类简介:
 */
public class User {

    public User() {
        System.out.println("创建了User对象!");
    }
}
  • resource目录下新建application.xml文件

  • 编写xml配置文件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd">
    <!-- 创建User对象 -->
    <!--
       id: 对象的别名,用于获取对象
       class: 需要创建的对象,必须是类的全限定名
     -->
    <bean id="user" class="com.mobaijun.User"/>
    <bean id="user2" class="com.mobaijun.User2"/>
    <bean id="user3" class="com.mobaijun.User3"/>
</beans>
  • test目录下新建Demo测试类
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package com.mobaijun;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * @Author: Auser·杰
 * Development: IntelliJ IDEA 2018.2.4 x64
 * ClassName: Demo1
 * ClassCreateDate: 2020/1/3 14:17
 * 类简介:
 */
public class Demo1 {

    @Test
    public void test1() {
        // 创建IOC容器(模拟beanFactory)
        ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
        User user = (User) ac.getBean("user");
        System.out.println("user = " + user);
    }


    @Test
    public void test2() {
        ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
        User2 user2 = (User2) ac.getBean("user2");
        System.out.println("user2 = " + user2);
    }

    @Test
    public void test3() {
        ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
        User3 user3 = (User3) ac.getBean("user3");
        System.out.println("user3 = " + user3);
    }
}

小结: 创建项目,导入spring-context坐标 2)创建User对象 3)创建bean.xml,定义 4)创建IOC容器(ApplicationContext),从容器获取对象getBean(“id”)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-01-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Spring IOC相关注解运用——上篇
        注解配置和xml配置对于Spring的IOC要实现的功能都是一样的,只是配置的形式不一样。 准备工作:
会洗碗的CV工程师
2023/05/07
1930
Spring IOC相关注解运用——上篇
Spring的IOC的实现账户的CRUD
Spring的IOC的实现账户的CRUD 完整目录结构 image.png 打开你的图形化界面工具(sqlyog,navicat...),创建数据库spring-test,导入以下SQL DROP TABLE IF EXISTS USER; CREATE TABLE USER ( id INT(11) NOT NULL AUTO_INCREMENT, username VARCHAR(32) NOT NULL COMMENT '用户名称', birthday DATETIME DEFAU
框架师
2021/03/05
2800
利用Spring的IOC的实现数据库的CRUD
正文 引言: 纵然是基础,也还是有很多人不会; 先看一下完整的目录结构 打开你的图形化界面工具(sqlyog,navicat...),创建数据库spring-test,导入以下SQL DROP TA
框架师
2020/02/12
3880
利用Spring的IOC的实现数据库的CRUD
【旧】G003Spring学习笔记-IOC之注解方式实现
属性:value用于指定bean的id,当我们不写时,默认为当前类名,首字母小写;
訾博ZiBo
2025/01/06
720
【旧】G003Spring学习笔记-IOC之注解方式实现
Spring IOC
spring 就是一个大工厂,可以将所有对象创建和依赖关系维护,交给 spring 管理。
希希里之海
2019/06/13
6100
Spring:IOC
自己做饭:买菜、洗菜、择菜、改刀、炒菜,全过程参与,费时费力,必须清楚了解资源创建整个过程中的全部细节且熟练掌握。
愷龍
2023/01/20
3710
Spring:IOC
_IOC使用Spring实现附实例详解
OK,本次使用Spring实现IOC就到这里了,上述讲到的三个实现类会在接下来中多次使用,希望对大家有所帮助
会洗碗的CV工程师
2023/11/20
1900
_IOC使用Spring实现附实例详解
Spring之IOC容器
spring core提供了IOC,DI,Bean配置装载创建的核心实现 核心概念: Beans、BeanFactory、BeanDefinitions、ApplicationContext
Java微观世界
2025/01/21
2440
Spring之IOC容器
快速搭建一个spring入门案例及整合日志
在idea中,依次单击 File -> New -> Project -> New Project
一个风轻云淡
2023/10/15
1760
快速搭建一个spring入门案例及整合日志
IOC使用Spring实现附实例详解
一、相关导读         大家如果对于本期内容有什么不了解的话也可以去看看往期的内容,下面列出了博主往期精心制作的Maven,Mybatis等专栏系列文章,走过路过不要错过哎!如果对您有所帮助的话就点点赞,收藏一下啪。其中Spring专栏有些正在更,所以无法查看,但是当博主全部更完之后就可以看啦。 1. Maven系列专栏文章 Maven系列专栏 Maven工程开发 Maven聚合开发【实例详解---5555字】 2. Mybatis系列专栏文章 Mybatis系列专栏 MyBatis入门配置
会洗碗的CV工程师
2023/04/30
2420
IOC使用Spring实现附实例详解
写了很久!详细理解Spring和IoC
Spring是一个轻量级开源框架,以 IOC(Inverse Of Control:控制反转)和 AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层 Spring MVC 和持久层 Spring JDBC 以及业务层事务管理等众多的企业级应用技术,最为典型的当属数据库事务的使用,还能整合开源世界众多著名的第三方框架和类库,应该说Spring框架已经融入到了Java EE的各个开发领域。
程序员的时光001
2020/09/21
4420
写了很久!详细理解Spring和IoC
Spring之hello world(Spring入门)
本文介绍了Spring框架在Java领域的地位,以及其常用模块和配置方式。通过实例介绍了如何使用Spring框架进行项目的创建和配置,并总结了Spring最牛X的框架。
别先生
2018/01/02
6490
Spring之hello world(Spring入门)
【旧】G002Spring学习笔记-IOC之XML方式实现
它在构建容器时,创建对象采用的策略是立即加载的方式,也就是说,一读完配置文件就马上创建对象;
訾博ZiBo
2025/01/06
790
【旧】G002Spring学习笔记-IOC之XML方式实现
2023新版Spring6全新讲解-HelloSpring入门案例
在idea中,依次单击 File -> New -> Project -> New Project
用户4919348
2023/05/27
4300
2023新版Spring6全新讲解-HelloSpring入门案例
关于 Spring Ioc,看这一篇就够了!
Ioc(Inversion of Control),即 控制反转,是 Spring 框架的核心内容,实际上指的是 对一个对象的控制权的反转,和 OOP 一样,属于一种设计思想。Ioc 表示将我们 设计好的对象交由容器控制,而 不再使用在对象内部直接控制 这种传统方式,而 DI(依赖注入)则是实现 Ioc 的一种方法。
村雨遥
2020/07/29
9730
关于 Spring Ioc,看这一篇就够了!
Spring-IOC实现【01-XML配置方式】
IOC概念 IoC控制反转(IoC,Inversion of Control), 是一个概念,是一种思想。控制反转就 是对对象控制权的转移,从程序代码本身反转到了外部容器。把对象的创建、初始化、 销毁等工作交给spring容器来做。由spring容器控制对象的生命周期。 DI依赖注入:Dependency Injection。 依赖注入DI是指程序运行过程中,若需要调用另 一个对象协助时,无须在代码中创建被调用者,而是依赖于外部容器,由外部容器创 建后传递给程序。 依赖注入是目前最优秀的解耦方
用户4919348
2019/04/02
6020
Spring-IOC实现【01-XML配置方式】
3、Spring 之IOC 容器 详解
IoC 是 Inversion of Control 的简写,译为“控制反转”,它不是一门技术,而是一种设计思想,是一个重要的面向对象编程法则,能够指导我们如何设计出松耦合、更优良的程序。
叫我阿杰好了
2023/10/17
7K0
3、Spring 之IOC 容器 详解
Spring:IOC
自己做饭:买菜、洗菜、择菜、改刀、炒菜,全过程参与,费时费力,必须清楚了解资源创建整个过程中的全部细节且熟练掌握。
愷龍
2023/02/10
2950
Spring:IOC
【旧】G005Spring学习笔记-Spring完全注解实现及优化
因为junit继承了一个main方法,这个main方法会判断当前测试类中有@Test注解的方法,并使其执行;
訾博ZiBo
2025/01/06
960
【旧】G005Spring学习笔记-Spring完全注解实现及优化
Spring AOP简介及相关案例
会洗碗的CV工程师
2023/10/14
2260
Spring AOP简介及相关案例
相关推荐
Spring IOC相关注解运用——上篇
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验