Spring——基于注解方式的依赖注入
2016-04-30 16:14
483 查看
首先先了解其中的注解都是做什么的,用在什么地方:
@Autowired 自动按照类型依赖注入,可以对成员变量,方法及构造函数进行标注
@Resource
自动按照名称依赖注入,可以对成员变量,方法及构造函数进行标注
@Controller
通常标注控制层
@Service 通常标注业务层
@Repository
通常标注数据访问层(DAO)
@Component
泛指组件,用于不好分类是的标注
@Scope bean的作用域(property)
下面是基于Set方法的例子:
D层的实现类:
Client类:
@Autowired 自动按照类型依赖注入,可以对成员变量,方法及构造函数进行标注
@Resource
自动按照名称依赖注入,可以对成员变量,方法及构造函数进行标注
@Controller
通常标注控制层
@Service 通常标注业务层
@Repository
通常标注数据访问层(DAO)
@Component
泛指组件,用于不好分类是的标注
@Scope bean的作用域(property)
下面是基于Set方法的例子:
D层的实现类:
package com.spring.dao; import org.springframework.stereotype.Repository; @Repository("userDao") public class UserDaoImpl implements UserDao { @Override public void addUser() { System.out.println("addUser"); } }Service的实现类:
package com.spring.service; import javax.annotation.Resource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Service; import com.spring.dao.UserDao; @Service("userService") public class UserServiceImpl implements UserService { private UserDao userDao; @Autowired public void setUserDao(UserDao userDao) { this.userDao = userDao; } @Override public void addUser() { userDao.addUser(); } }
Client类:
package com.spring.client; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.spring.config.ApplicationConfig; import com.spring.service.UserService; import com.spring.service.UserServiceImpl; public class Client { public static void main(String[] args) { AnnotationConfigApplicationContext applicatioinContext= new AnnotationConfigApplicationContext(ApplicationConfig.class); UserService userService= applicatioinContext.getBean("userService",UserService.class); userService.addUser(); } }配置类:
package com.spring.config; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; @Configuration @ComponentScan(basePackages={"com.spring"}) public class ApplicationConfig { }
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树