`

Spring @Configuration用annotation装配spring

阅读更多

下面是一个典型的Spring配置文件(application-config.xml

<beans>
        <bean id="orderService" class="com.acme.OrderService"/>
                <constructor-arg ref="orderRepository"/>
        </bean>
        <bean id="orderRepository" class="com.acme.OrderRepository"/>
                <constructor-arg ref="dataSource"/>
        </bean>
</beans>

 然后你就可以像这样来使用是bean了:

   ApplicationContext ctx = new ClassPathXmlApplicationContext("application-config.xml");
   OrderService orderService = (OrderService) ctx.getBean("orderService");

 现在Spring Java Configuration这个项目提供了一种通过java代码来装配bean的方案:

@Configuration
public class ApplicationConfig {

        public @Bean OrderService orderService() {
                return new OrderService(orderRepository());
        }

        public @Bean OrderRepository orderRepository() {
                return new OrderRepository(dataSource());
        }

        public @Bean DataSource dataSource() {
                // instantiate and return an new DataSource …
        }
}

 然后你就可以像这样来使用是bean了:

  JavaConfigApplicationContext ctx = new JavaConfigApplicationContext(ApplicationConfig.class);
  OrderService orderService = ctx.getBean(OrderService.class);

 这么做有什么好处呢?

     1.使用纯java代码,不在需要xml

     2.在配置中也可享受OO带来的好处

     3.类型安全对重构也能提供良好的支持

     4.依旧能享受到所有springIoC容器提供的功能

分享到:
评论

相关推荐

    Spring annotation

    - `@Autowired`: 自动装配依赖,Spring会根据类型或属性名自动找到合适的bean进行注入。 - `@Qualifier`: 当有多个相同类型的bean时,使用`@Qualifier`指定具体要注入的bean。 - `@Resource`: 与`@Autowired`类似...

    Spring Annotation简介一

    1. **依赖注入(Dependency Injection, DI)**:Spring Annotation中最常用的注解之一是`@Autowired`,它实现了自动装配bean。当在类的字段或构造器上使用`@Autowired`时,Spring会自动寻找类型匹配的bean并注入。...

    Spring - Annotation 自动匹配注入IOC

    在Spring框架中,注解(Annotation)自动匹配注入IoC(Inversion of Control,控制反转)是一种关键特性,它极大地简化了Java应用的配置管理。本文将深入探讨这一主题,帮助开发者更好地理解和利用这一功能。 首先...

    spring 2.0使用AOP实例(基于Annotation的配置方式)

    这可以通过`@Component`注解完成,然后使用`@ComponentScan`来扫描并自动装配这些组件。 ```java @Component @Aspect public class LoggingAspect { // ... } @Configuration @ComponentScan(basePackages = {...

    权限管理 struts2 hiberante3.5 spring3.0 annotation

    通过Spring的`@Configuration`和`@ComponentScan`注解,可以声明并自动扫描相关的bean。`@Autowired`注解则用于自动装配依赖。Spring还支持基于XML的配置,但使用注解能减少配置文件的复杂性,提高代码的可读性。 ...

    Spring注解驱动开发实战-annotation

    而在注解驱动开发中,我们可以通过在类上使用@Component(或其子注解@Service、@Repository、@Controller)来标记一个类为Spring管理的组件。例如: ```java @Service public class UserService { // ... } ``` ...

    Spring_Annotation_IOC代码

    在Spring 2.5版本后,Spring引入了注解来简化配置,这就是所谓的Annotation-based IOC。本文将深入探讨Spring注解驱动的IOC机制。 ### 1. 注解的引入 传统XML配置方式虽然灵活,但随着项目规模的扩大,XML配置文件...

    spring02-4

    import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; ``` 这些注解分别用于不同的目的。`@Autowired`用于自动装配bean,`@Value`用于...

    spring源代码分析:annotation支持的实现

    在Spring框架中,注解(Annotation)支持是其核心特性之一,它极大地简化了配置,提高了代码的可读性和可维护性。这篇博客"spring源代码分析:annotation支持的实现"探讨了Spring如何通过注解处理来实现组件扫描和...

    使用注解自动装配需要组件扫描.zip

    在Spring框架中,注解自动装配(Annotation-based Autowiring)是一种简化依赖注入(Dependency Injection,简称DI)的方式,它允许开发者用注解来声明类的依赖,而无需使用XML配置文件。本教程将深入讲解如何使用...

    Spring Boot技术知识点:Bean装配1

    3. **@Configuration和@Bean**:在Java配置中,@Configuration注解标记一个类为配置类,其中的方法可以使用@Bean注解来声明Bean。@Bean注解告诉Spring容器该方法返回的对象应该被注册为一个Bean。这种方法允许更灵活...

    spring_core_annotation:注释弹簧

    默认情况下,Spring中的Bean是单例的,但如果需要每个请求或会话都有一个新的实例,可以使用@Scope注解。 7. **@PostConstruct**与**@PreDestroy**: 分别标记初始化方法和销毁方法。在Bean的生命周期中,Spring会在...

    spring_test.zip

    本示例"spring_test.zip"集中讨论了Spring框架中的一个重要概念:注解(Annotation),以及如何通过注解将可重用的组件,即bean,添加到Spring容器中。以下是对这些知识点的详细解释: 首先,让我们理解Spring框架...

    Spring新配置.rar

    同时,我们可以使用@Autowired注解自动装配bean的依赖,无需在配置类中显式定义。例如: ```java @Service public class MyServiceImpl implements MyService { @Autowired private MyDependency myDependency; }...

    spring annotation example

    创建一个Spring配置类(通常命名为`AppConfig`),使用`@Configuration`注解来声明这是一个配置类,然后使用`@ComponentScan`注解来指定包含`@Component`注解的类的包路径,让Spring容器扫描并管理这些类。...

    spring famework 基于注解配置示例

    然而,随着注解(Annotation)技术的发展,Spring框架引入了基于注解的配置,使得代码更加简洁、直观。本示例将详细介绍如何使用注解配置实现Spring框架的注入。 首先,我们需要了解几个关键的注解: 1. `@...

    JavaEE基础3 、掌握基于注解的装配技术,并编程验证。 2、掌握自动装配技术,并编程验证。

    在JavaEE开发中,注解(Annotation)和自动装配(Autowiring)是Spring框架中的核心技术,它们极大地简化了应用程序的配置和依赖管理。这里我们将深入探讨这两个知识点,并通过编程验证来加深理解。 首先,基于注解...

    AOP中的注解自动装配通知

    例如,可以在事务管理切面中使用@Around注解,结合@Transactional,实现事务的自动化管理。同时,通过@Autowired和@Resource注解,可以方便地在类之间注入依赖,简化代码。 总之,AOP中的注解自动装配通知是Spring...

    Spring中常用注解

    在Java开发领域,Spring框架以其强大的功能和灵活的配置闻名,而注解(Annotation)是Spring框架中的一个重要组成部分,极大地简化了代码的编写和维护。本文将深入探讨Spring框架中的一些常用注解,并通过实例来解析...

Global site tag (gtag.js) - Google Analytics