Spring2.5注解(标注)学习笔记
Spring2.5注解(标注)学习笔记: 一句话:对开发人员来说:最常用的Spring2.5最常用的注解就4个: @Resource @Qualifier @Service @Repository ### Spring2.5注解(标注)学习笔记 在探讨Spring2.5中常见的四个注解之前,我们先简要回顾一下Spring框架的基本概念。Spring框架是一个轻量级的Java应用开发框架,它通过依赖注入(DI)和面向切面编程(AOP)等特性来简化Java企业级应用的开发过程。 #### 一、Spring2.5中的四个常用注解 在Spring2.5中,有四个常用的注解特别值得关注:`@Resource`、`@Qualifier`、`@Service` 和 `@Repository`。 ##### 1. `@Resource` `@Resource` 注解主要用于依赖注入,它可以用来自动装配Bean。该注解可以作用于字段或setter方法上,与`@Autowired`类似但功能更强大,因为它支持按名称和类型查找Bean。 **示例代码:** ```java public class UserServiceImpl implements UserService { private UserDao userDao; @Resource(name="userDao") public void setUserDao(UserDao userDao) { this.userDao = userDao; } } ``` 在这个例子中,`@Resource`注解被用于根据名称`"userDao"`来自动装配`UserDao` Bean。 ##### 2. `@Qualifier` `@Qualifier`注解用于解决当容器中有多个相同类型的Bean时如何精确地指定注入哪个Bean的问题。它通常配合`@Autowired`或`@Resource`一起使用。 **示例代码:** ```java @Autowired @Qualifier("userDao") public void setUserDao(UserDao userDao) { this.userDao = userDao; } ``` 在这个例子中,通过`@Qualifier("userDao")`指定了注入`UserDao`的具体Bean。 ##### 3. `@Service` `@Service`注解通常用于标记业务层组件。它是一个组合注解,实际上是`@Component`的别名。当Spring扫描到带有`@Service`注解的类时,会将其注册为一个Bean并存入Spring IoC容器。 **示例代码:** ```java @Service("userService") public class UserServiceImpl implements UserService { // ... } ``` 这里`@Service("userService")`定义了一个名为`"userService"`的Bean。 ##### 4. `@Repository` `@Repository`注解通常用于标记数据访问层(DAO层)组件。它同样是`@Component`的一个别名,主要用于声明式事务管理。Spring会自动识别这些标记,并提供必要的事务支持。 **示例代码:** ```java @Repository("userDao") public class UserDaoImpl implements UserDao { // ... } ``` 这里`@Repository("userDao")`定义了一个名为`"userDao"`的Bean,Spring会自动为其提供事务管理支持。 #### 二、使用Spring2.5注解的步骤 1. **导入必要的库**:需要导入Spring相关的jar包。对于Spring2.5版本,可能只需要导入`spring.jar`和`common-logging.jar`这两个核心库。 2. **创建项目结构**:根据项目的实际需求设计合理的项目结构。例如,本例中按照以下结构创建: ``` src |--- entity | User.java |--- service | UserServiceIf.java |--- impl | UserServiceImpl.java |--- dao | UserDaoIf.java |--- impl UserDaoImpl.java ``` 3. **编写实体类**:创建实体类,如`User.java`。 4. **实现服务接口**:创建服务接口`UserServiceIf.java`以及其实现类`UserServiceImpl.java`。 5. **实现数据访问对象接口**:创建数据访问接口`UserDaoIf.java`以及其实现类`UserDaoImpl.java`。 6. **应用注解**:在`UserServiceImpl.java`和`UserDaoImpl.java`中分别应用`@Service`和`@Repository`注解。 #### 三、总结 通过对Spring2.5中这四个常用注解的学习,我们可以更加高效地进行Java企业级应用的开发。使用这些注解可以大大减少XML配置的工作量,使代码更加简洁、易读。同时,这些注解也为Spring框架提供了强大的功能支持,有助于提升开发效率和代码质量。
想深入的学习springside,并且由于项目的需要,和在项目中深切体会到大量的<bean/>标签的繁琐。故学习起spring的注解。
一句话:对开发人员来说:最常用的Spring2.5最常用的注解就4个:
@Resource @Qualifier @Service @Repository
由于项目中用到的是spring 2.5,和原来的spring2.0配置多少是有点出入的。
步骤:
1.导包。
将spring.jar 和 common-logging.jar。就两个包?对,就两个包。对于spring2.0不推荐用的标注,如@Autowired,@Component 咱就不用了,直接用推荐的。
3.建工程。为了测试@Repository 和@Service标签,我按以下结构建包。
src|---entity|---User.java
|--service|--UserServiceIf.java
|--impl--|
--UserServiceImpl.java
|--dao----|--UserDaoIf.java
|--impl--|
---UserDaoImpl.java
Class:User.java
package com.fun.entity;
import org.apache.commons.lang.builder.ToStringBuilder;
public class User {
private Long id;
private String name;
private String password;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
剩余11页未读,继续阅读
- 粉丝: 28
- 资源: 13
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- qaxbrowser-1.1.32574.52.exe (奇安信浏览器windows安装包)
- C#编写modbus tcp客户端读取modbus tcp服务器数据
- 某房地产瑞六补环境部分代码
- 基于Matlab实现无刷直流电机仿真(模型+说明文档).rar
- AllSort(直接插入排序,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序)
- 模拟qsort,改造冒泡排序使其能排序任意数据类型,即日常练习
- carsim+simulink联合仿真实现变道 包含路径规划算法+mpc轨迹跟踪算法 可选simulink版本和c++版本算法 可以适用于弯道道路,弯道车道保持,弯道变道 carsim内规划轨迹可视化
- 数组经典习题之顺序排序和二分查找和冒泡排序
- 永磁同步电机神经网络自抗扰控制,附带编程涉及到的公式文档,方便理解,模型顺利运行,效果好,位置电流双闭环采用二阶自抗扰控制,永磁同步电机三闭环控制,神经网络控制,自抗扰中状态扩张观测器与神经网络结合
- 基于 Oops Framework 提供的游戏项目开发模板,项目中提供了最新版本 Cocos Creator 3.x 插件与游戏资源初始化通用逻辑