第一章 Spring基础

第一章 Spring基础

1.3 Spring 基础配置
1.3.2 Java配置

Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置;java配置也是Spring boot推荐的配置方式。
Java配置是通过@Configuration和@Bean来实现的。

  • @Configuration声明当前类是一个配置类,相当于一个Spring配置的xml文件。
  • @Bean注解在方法上,声明当前方法的返回值为一个Bean。
@Configuration //1
public class JavaConfig {
  @Bean //2
  public FunctionService functionService() {
    return new FunctionService();
  } 

  @Bean 
  public UseFunctionService useFunctionService() {
    UseFunctionService  useFunctionService = new UseFunctionService ();
    useFunctionService.setFunctionService(functionService()); //3
    return useFunctionService;
  }

  //@Bean
  //public UseFunctionService useFunctionService(FunctionService functionService) { //4
  //  UseFunctionService  useFunctionService = new UseFunctionService ();
  //  useFunctionService.setFunctionService(functionService); 
  //  return useFunctionService;
 // }
}
  1. 使用@Configuration注解表明当前类是一个配置类。
  2. 使用@Bean注解声明当前方法的返回值是一个Bean,Bean的名称是方法名。
  3. 调用方法来注入Bean。
  4. 另外一种注入方式:在Spring容器中,只要存在某个Bean,就可以在另一个Bean的声明方法的参数中注入。
1.3.3 AOP

使用@EnableAspectJAutoProxy注解开启Spring对AspectJ的支持。

第二章 Spring常用配置

2.1 Bean的Scope

@Scope注解
(1) singleton:一个Spring容器中只有一个Bean实例,此为Spring的默认配置,全容器共享一个实例
(2) prototype : 每次调用都会新建一个Bean的实例。
(3) request : Web项目中,每个http request都会新建一个Bean的实例。
(4) session : Web项目中,每个http session都会新建一个Bean的实例。
(5) golobalSession : 这个只在portal应用中有用,给每个global http session新建一个Bean的实例。

  @Service
  @Scope("prototype")
  public class DemoPrototypeService {
  
  } 

你可能感兴趣的:(第一章 Spring基础)