springboot 类配置

来源:互联网 发布:排百度搜索优化软件 编辑:程序博客网 时间:2024/06/17 02:40

服务

public class FunctionService {    public String sayHello(){        return "Hello" + word + "!";    }}

调用

public class UseFunctionService{    FunctionService functionService;    //注入成功    public void setFunctionService(FunctionService functionService){        this.functionService = functionService;    }    //这个相当于调用工具,调用sayHello的实现    public String sayHello(){        return functionService.sayHello();    }}

这就相当于是一个XML配置,注入了两个Bean

@Configurationpublic class JavaConfig{    //这个相当于是get方法了,给这个返回的对象添加上注解,那么这个FunctionService就是一个Bean了    @Bean //2    public FunctionService functionService (){        return new FunctionService();    }    @Bean    public UseFunctionService useFunctionService(){        //初始化        UseFunctionService useFunctionService = new useFunctionService();        //将useFunctionService中需要用到的FunctionService注入        useFunctionService.setFunctionService(functionService ());        //将useFunctionService返回        return useFunctionService;    }   }

java配置是spring4.X所推荐的配置方式
像上面两个Bean
就是用JavaConfig用作配置文件来加载

加载方法:
//这是扫描配置文件方法

    ApplicationContext application = new ClassPathXmlApplicationContext("classpath:spring/applicationContext-solr.xml");

//这是Java配置的方法

    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(JavaConfig.class);

使用@Configuration注解表明当前类是一个java配置类,这意味着这个类中可能有0个或者多个@bean注解,这里我们就没用包扫描,因为所有的bean一共就两个,都在这个类中定义了
另外一种注入方式.如上,一个Bean中调用另外一个Bean,只要这个Bean被声明过了,那么他就可以在别的类中以参数注入

### 使用@Bean注解声明当前方法FunctionService的返回值是一个Bean,Bean的名称就是方法名

这就是java中Bean的配置

原创粉丝点击