欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

SpringBoot之Java配置的实现

时间:2021-03-08 11:39:49|栏目:JAVA代码|点击:

Java配置也是Spring4.0推荐的配置方式,完全可以取代XML的配置方式,也是SpringBoot推荐的方式。

Java配置是通过@Configuation和@Bean来实现的:

  1、@Configuation注解,说明此类是配置类,相当于Spring的XML方式

  2、@Bean注解,注解在方法上,当前方法返回的是一个Bean

eg:

此类没有使用@Service等注解方式

package com.wisely.heighlight_spring4.ch1.javaconfig;

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

此类没有使用@Service注解lei,也没有使用@Autowire注入Bean

package com.wisely.heighlight_spring4.ch1.javaconfig;

public class UseFunctionService {
  
  FunctionService functionService;

  public void setFunctionService(FunctionService functionService) {
    this.functionService = functionService;
  }
  
  public String SayHello(String world) {
    return functionService.sayHello(world);
  }
}

1、使用@Configuation注解说明此类是一个配置类

2、使用@Bean注解的方式注解在方法上,返回一个实体Bean,Bean的名称是方法名。

3、注入FunctionService的Bean的时候,可以直接使用functionService方法。

4、注解将functionService作为参数直接传入UseFunctionService。在spring容器中,只要在容器中存在一个Bean,就可已在另一个Bean的声明方法的参数中直接使用。

package com.wisely.heighlight_spring4.ch1.javaconfig;

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

@Configuration
public class JavaConfig {
  @Bean
  public FunctionService functionService() {
    return new FunctionService();
  }
  
  @Bean
  public UseFunctionService useFunctionService() {
    UseFunctionService useFunctionService = new UseFunctionService();
    useFunctionService.setFunctionService(functionService());
    return useFunctionService;
  }
  
  @Bean
  public UseFunctionService useFunctionService(FunctionService functionService) {
    UseFunctionService useFunctionService = new UseFunctionService();
    useFunctionService.setFunctionService(functionService);
    return useFunctionService;
  }
}

测试类:

package com.wisely.heighlight_spring4.ch1.javaconfig;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class Main {
  public static void main(String[] args) {
    AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(JavaConfig.class);
    UseFunctionService useFunctionService = context.getBean(UseFunctionService.class);
    System.out.println(useFunctionService.SayHello("java config"));
    context.close();
  }
}

上一篇:java Long==Long有趣的现象详解

栏    目:JAVA代码

下一篇:对比Java讲解Kotlin中?.与!!.的区别

本文标题:SpringBoot之Java配置的实现

本文地址:http://www.codeinn.net/misctech/76746.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有