• Spring深入浅出(十一),注解,@Configuration 和 @Bean


    带有 @Configuration 的注解类表示这个类可以使用 Spring IoC 容器作为 bean 定义的来源。@Bean 注解告诉 Spring,一个带有 @Bean 的注解方法将返回一个对象,该对象应该被注册为在 Spring 应用程序上下文中的 bean。

    参考如下代码:

    package com.clzhang.spring.demo;
    
    import org.springframework.context.annotation.*;
    @Configuration
    public class HelloWorldConfig {
       @Bean 
       public HelloWorld helloWorld(){
          return new HelloWorld();
       }
    }

    上述代码等同于:

    <beans>
       <bean id="helloWorld" class="com.clzhang.spring.demo.HelloWorld" />
    </beans>

    完整示范:

    1. 创建实体类

    package com.clzhang.spring.demo;
    
    public class HelloWorld {
        private String message;
    
        public void setMessage(String message) {
            this.message = message;
        }
    
        public void getMessage() {
            System.out.println("Your Message : " + message);
        }
    }

    2. 创建业务类

    package com.clzhang.spring.demo;
    
    import org.springframework.context.annotation.*;
    @Configuration
    public class HelloWorldConfig {
       @Bean 
       public HelloWorld helloWorld(){
          return new HelloWorld();
       }
    }

    3. 创建主程序

    package com.clzhang.spring.demo;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.annotation.*;
    
    public class MainApp {
       public static void main(String[] args) {
          ApplicationContext ctx = 
          new AnnotationConfigApplicationContext(HelloWorldConfig.class);
    
          HelloWorld helloWorld = ctx.getBean(HelloWorld.class);
    
          helloWorld.setMessage("Hello World!");
          helloWorld.getMessage();
       }
    }

    4. 运行(不需要配置文件)

    Your Message : Hello World!

    本文参考:

    https://www.w3cschool.cn/wkspring/tlbk1icp.html

  • 相关阅读:
    React初识整理(二)--生命周期的方法
    React初识整理(一)
    前后端分离浅析
    url地址数据参数转化JSON对象(js三种方法实现)
    js和JQuery中的获取宽、高、位置等方法整理
    游民轮播图效果实现
    焦点轮播图效果实现
    iOS开发debug集锦
    实现一个 RESTful API 服务器
    从iOS的图片圆角想到渲染
  • 原文地址:https://www.cnblogs.com/nayitian/p/15006030.html
Copyright © 2020-2023  润新知