众所周知:Spring 刚开始的时候支持XML配置的方式获取Bean实例,到后来开始支持注解的
方式配置,在3.0 的时候支持了类注解方式。使用了Spring旗下的JavaConfig项目。
package org.spring.core.test;
public class Boss
{
private String name;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public Boss()
{
}
}
在该例子中,我写了一个JavaBean。我不在Spring的xml配置它,也不使用常用的注解。
在这里来看看使用类注解如何配置:
package org.spring.core.test;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class Beans
{
@Bean(name = "boss")
public Boss genBoss()
{
Boss boss = new Boss();
boss.setName("boblee");
return boss;
}
}
该类就是类注解的方式。使用@Configuration注解声明。@Bean(name = "boss") 表示当getBean的时候使用boss
这个名称。
package org.spring.core.test;
import static org.junit.Assert.*;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
public class SpringTest
{
@Test
public void test()
{
ApplicationContext ctx = new AnnotationConfigApplicationContext(Beans.class);
Boss boss = ctx.getBean("boss", Boss.class);
assertEquals(boss.getName(), "boblee");
}
}
这个时候就可以看到Junit的状态为绿色了。注意关键的部分,有事回家了,不写了!!
如果报错根据相关提示引用相关的包.
分享到:
相关推荐
Spring 源码注释中文版的提供,使得开发者能够更加深入地理解 Spring 的工作原理,无需经过复杂的编译过程,可以直接阅读源码注释来学习。 Spring 框架主要由以下几个关键模块组成: 1. **Core Container(核心...
本文将深入探讨Spring注解的基本原理,包括它们如何被解析、处理以及如何影响应用程序的生命周期。 首先,我们需要了解注解在Java语言中的本质。注解是一种元数据,允许程序员在源代码中嵌入信息,这些信息可以被...
这份"spring源码(注释+测试版)"提供了Spring框架的源代码,带有注释和测试用例,对于开发者深入理解Spring的工作原理非常有帮助。 1. **spring-core**:这是Spring框架的基础模块,包含了核心的工具类和资源处理...
7. **组件扫描**:Spring的`@Component`、`@Service`、`@Repository`和`@Controller`等注解用于标记组件类,配合`@ComponentScan`可以自动检测并注册这些类到IoC容器,从而实现bean的自动创建和依赖注入。...
以上就是Spring注解方式实现AOP的一些核心细节。通过这种方式,我们可以方便地在不修改原有代码的情况下,为服务添加额外的功能,实现代码的解耦和复用。不过,需要注意的是,过度使用AOP可能会导致代码可读性和可...
然而,在某些情况下,我们可能需要在非Spring注解的类中访问Spring容器中的Bean,或者在这些类中使用YAML配置文件中的配置信息。本篇将详细介绍如何在这样的场景下实现这一目标。 首先,让我们来理解如何在非Spring...
例如,`@Component`、`@Service`、`@Repository`和`@Controller`这些注解用于标记不同类型的bean,使Spring自动扫描并管理这些类。此外,`@Autowired`用于依赖注入,使得对象之间的关联配置变得更加简洁。 接着,...
这份"spring 源码中文注释"包含了对Spring框架源码的详细解读,对于理解其工作原理、优化代码以及定制化开发具有重要意义。 首先,我们来看看Spring的核心组件——IoC容器。IoC容器是Spring的核心,它负责管理对象...
这个压缩包文件中的"spring源码 中英文注释"为开发者提供了一个深入理解Spring框架内部工作原理的机会。通过阅读源码和注释,我们可以更清晰地了解Spring如何管理依赖注入、AOP(面向切面编程)、事务管理、上下文...
8. `@EnableAspectJAutoProxy`:这个配置注解用于启用Spring对AspectJ切面的支持,使得Spring能够自动代理切面类。 接下来,我们来看如何使用这些注解。首先创建一个切面类,使用`@Aspect`注解标识,然后定义切点...
以下是一些常用的Spring注解: 1. **@Component** - 用于标记一个类作为Spring管理的Bean。 - 可以配合@ComponentScan注解使用,自动扫描指定包下的所有组件。 2. **@Service** - 特别适用于业务逻辑层的服务...
`@ComponentScan`是Spring的核心组件扫描机制,它会遍历指定包及其子包下的所有类,寻找标记了Spring的组件注解(如`@Component`, `@Service`, `@Repository`, `@Controller`)的类,并将它们注册为Spring Bean。...
Spring注解的处理主要由两部分组成:元注解和注解处理器。元注解是用于创建其他注解的注解,如`@Target`、`@Retention`、`@Documented`和`@Inherited`,它们定义了注解的使用位置、生命周期、是否出现在Javadoc中...
#### 二、Spring注解图示与分类 ##### 2.1 Spring-Context 模块的注解图 - **@Component**: 用于标记任何Java类作为Spring中的一个组件。该注解通常配合`<context:component-scan>`使用,以便Spring能够自动检测和...
Spring源码注解版
3. `@Component`:这是Spring的组件注解,用于标记一个类为Spring管理的Bean。它是`@Service`、`@Repository`和`@Controller`的基础,这三个是它的特殊形式,分别对应服务层、数据访问层和表现层。 4. `@Service`:...
Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于...
总之,"Spring注释包"涵盖了Spring框架中用于简化开发、增强代码可读性的核心注解。通过学习和熟练运用这些注解,开发者能够更高效地构建基于Spring的应用程序,实现松耦合、高内聚的设计目标。
在Spring AOP中,我们可以通过`@Aspect`注解定义一个类作为切面,并使用`@Before`、`@After`、`@Around`等注解来定义通知(advice),这些通知会在特定的方法执行前后被调用。 ```java @Aspect @Component public ...
Spring注解的主要目的是消除XML配置文件,使开发者能够通过在类或方法上直接添加注解来声明对象及其依赖关系。这个小例子将深入探讨Spring框架中的主要注解及其用法。 1. `@Component`、`@Service`、`@Repository` ...