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 [email protected] @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舒服。。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/18951.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论