zoukankan      html  css  js  c++  java
  • java spring boot @bean的用法

    java spring boot @bean的用法

    1 先看下spring bean xml中的应用

    package tutorialspoint;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    public class MainApp {
        public static void main(String[] args) {
            ApplicationContext context =
                    new ClassPathXmlApplicationContext("Beans.xml");
            HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
            obj.getMessage();
    
    
        }
    }
    package tutorialspoint;
    
    public class HelloWorld {
        private String message;
        public void setMessage(String message){
            this.message  = message;
        }
        public void getMessage(){
            System.out.println("Your Message : " + message);
        }
    }
    <?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-3.0.xsd">
    
        <bean id="helloWorld" class="tutorialspoint.HelloWorld">
            <property name="message" value="Hello World111!"/>
        </bean>
    
    </beans>

    A类调用B类 就是 A通过bean.xml 获取B 。。。。。。 反正我不喜欢这种设计模式 感觉不太好用。。。

    2 再看看还有个写法

    不用bean.xml 用@Configuration @Bean  代码bean.xml

    package tutorialspoint;
    import org.springframework.context.annotation.*;
    @Configuration
    public class HelloWorldConfig {
        @Bean
        public HelloWorld helloWorld(){
            return new HelloWorld();
        }
    }
    package tutorialspoint;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.annotation.AnnotationConfigApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    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();
    
    
        }
    }

    感觉还是看xml舒服。。

  • 相关阅读:
    Mongo连接远程数据库
    将MongoDB服务器设置成Windows启动服务(win10)
    关于php初学者的理解!请大家浏览并指出不足!谢谢!
    python+selenium初学者常见问题处理
    极客时间测试专栏阅读总结——软件测试总体方案
    pytest 一.安装和使用入门
    软件测试工程师——你不仅仅应该会点点点
    测试电梯、杯子、桌子、洗衣机的方法
    软件测试面试-软件测试宝典
    支付测试场景
  • 原文地址:https://www.cnblogs.com/newmiracle/p/12760281.html
Copyright © 2011-2022 走看看