Spring 4.x 中的注解详解与使用指南

需积分: 10 6 下载量 102 浏览量 更新于2024-09-09 收藏 885KB PDF 举报
Spring 4 注解详解 Spring 4 中的注解是 Spring 框架中的一种强大功能,可以减少代码的开发量,提高开发效率。下面对 Spring 4 中的注解进行详细的介绍和说明。 背景 Spring 4 中的注解可以减少代码的开发量,将 Spring 4.x 中涉及到的注解罗列出来,供查询使用。这些注解可以分为多个模块,包括 spring-context、spring-web 等模块。 Spring 注解图 Spring 中的注解可以分为多个模块,包括 spring-context、spring-web 等模块。下面对这些模块中的注解进行详细的介绍。 * spring-context 模块的注解 + @Autowired:自动装配 bean + @Qualifier:指定 bean 的名称 + @Profile:指定 bean 的 Profile + @Scope:指定 bean 的作用域 + @Lazy:延迟加载 bean * spring-web 模块的注解 + @Controller:标识控制器 + @RequestMapping:映射请求 + @ResponseBody:将返回值转换为 JSON + @RequestParam:将请求参数绑定到方法参数 + @PathVariable:将请求参数绑定到方法参数 * spring 其它模块的注解 + @Repository:标识数据访问层 + @Service:标识业务逻辑层 + @Component:标识组件 注解实例说明 下面通过一些示例代码来演示 Spring 中的注解的使用。 * 使用 @Autowired 注解自动装配 bean ```java @Service public class MyService { @Autowired private MyDao myDao; } ``` * 使用 @Qualifier 注解指定 bean 的名称 ```java @Service public class MyService { @Autowired @Qualifier("myDao") private MyDao myDao; } ``` * 使用 @Profile 注解指定 bean 的 Profile ```java @Service @Profile("dev") public class MyService { @Autowired private MyDao myDao; } ``` 注解处理器 在 Spring 中,需要注册注解处理器来处理注解。有多种方式可以注册注解处理器。 * 方式一:使用 bean 来注册注解处理器 ```xml <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/> ``` * 方式二:使用命名空间 `<context:annotation-config/>` 来注册注解处理器 ```xml <context:annotation-config/> ``` * 方式三:使用命名空间 `<context:component-scan/>` 来注册注解处理器 ```xml <context:component-scan base-package="com.example"/> ``` 过滤器 在 Spring 中,可以使用过滤器来过滤需要扫描的类。有多种类型的过滤方式,包括: * 注解过滤:使用注解来过滤类 * 类名过滤:使用类名来过滤类 * 正则表达式过滤:使用正则表达式来过滤类 * AspectJ 表达式过滤:使用 AspectJ 表达式来过滤类 例如,使用注解来过滤类: ```xml <context:component-scan base-package="com.example"> <context:include-filter type="annotation" expression="org.example.SomeAnnotation"/> </context:component-scan> ``` Spring 4 中的注解可以减少代码的开发量,提高开发效率。通过了解 Spring 中的注解,可以更好地使用 Spring 框架来开发应用程序。