Spring IOC容器Java配置示例

在本文中,我们将通过一个简单的示例,来演示基于java配置元数据的Spring IOC 容器。

Spring IOC容器负责实例化,配置和组装Spring Bean。容器通过读取配置元数据来获取要实例化,配置和组装哪些对象的信息。配置元数据以XML,Java注释或Java配置的形式表示。它使您能够表达组成应用程序的对象以及这些对象之间的相互依赖关系。

Spring IoC容器提供了三种方式配置元数据

  1. 基于XML的配置
  2. 基于注释的配置
  3. 基于Java的配置

在此示例中,我们将向Spring IoC容器提供基于Java配置元数据。

Spring应用程序开发步骤

  1. 创建Maven项目
  2. 添加Maven依赖项
  3. 配置 Spring Beans
  4. 创建spring容器
  5. 从Spring容器中获取Bean
1.创建Maven项目

使用您喜欢的IDE创建一个maven项目,本项目使用IDEA开发工具创建。

2.添加Maven依赖项
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.1.0.RELEASE</version>
        </dependency>         
3.配置 Bean

通常,Spring bean是由Spring容器管理的Java对象。

package com.spring.ioc.helloworld;

public class HelloWorld {
    private String message;

    public void setMessage(String message) {
        this.message = message;
    }

    public void getMessage() {
        System.out.println("My Message : " + message);
    }
}

配置元数据

package com.spring.ioc.helloworld;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class AppConfig {

    @Bean
    public HelloWorld helloWorld() {
        HelloWorld helloWorld = new HelloWorld();
        helloWorld.setMessage("Hello World!");
        return helloWorld;
    }
}

Spring @Configuration 注释是spring核心框架的一部分。Spring Configuration注释表示该类具有 @Bean 定义方法。因此,Spring容器可以处理类并生成应用程序中使用的Spring bean。

4.创建spring容器
package com.spring.ioc.helloworld;

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

public class Application {
    public static void main(String[] args) {
        AnnotationConfigApplicationContext  context = new AnnotationConfigApplicationContext(AppConfig.class);
        context.close();
    }
}
5.从Spring容器中获取Bean

ApplicationContext接口提供*getBean()*方法以从Spring容器中获取bean。

package com.spring.ioc.helloworld;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class Application {
    public static void main(String[] args) {
        // ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
        AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
        HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
        obj.getMessage();
        context.close();
    }
}

输出

My Message : Hello World!

想获取源码请私信我获取!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值