博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring3.2.5学习(二)——IoC注解配置
阅读量:4597 次
发布时间:2019-06-09

本文共 2091 字,大约阅读时间需要 6 分钟。

一、前言

这篇随笔主要是记录IoC完全使用Annotation的过程。

二、架包以及资源

架包的引入,以及项目结构参考;

三、配置环境

1.配置applicationContext.xml

其中base-package为指定扫描路径,当前配置为扫描路径:com.cyrus.paltform下的类。

2.服务类TCyrusUserService注释

package com.cyrus.platform.service;import javax.annotation.Resource;import org.springframework.stereotype.Component;import com.cyrus.platform.dao.TCyrusUserDAO;import com.cyrus.platform.model.TCyrusUser;@Component("userService")public class TCyrusUserService {    private TCyrusUserDAO userDAO;            public void save(TCyrusUser user){        this.userDAO.save(user);    }    public TCyrusUserDAO getUserDAO() {        return userDAO;    }    @Resource(name="userDAO")    public void setUserDAO(TCyrusUserDAO userDAO) {        this.userDAO = userDAO;    }}

其中@Component("userService") 类似于spring配置文件中bean标签,括号内的userService为bean标签中的name属性;@Resource相当于bean标签下的property属性配置,@Resource没有指定名称时,默认的搜寻规则为先查询类型,如果类型无法匹配,再查询名称。在@Resource中添加name属性则指定相关bean。

3.实现类TCyrusUserDAOImpl注释

package com.cyrus.platform.dao.impl;import org.springframework.stereotype.Component;import com.cyrus.platform.dao.TCyrusUserDAO;import com.cyrus.platform.model.TCyrusUser;@Component("userDAO")public class TCyrusUserDAOImpl implements TCyrusUserDAO {    @Override    public void save(TCyrusUser user) {        System.out.println("the user is saved!");    }}

三、测试

package com.cyrus.platform.service;import org.junit.Before;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.cyrus.platform.model.TCyrusUser;public class TCyrusUserServiceTest {    @Before    public void setUp() throws Exception {    }    @Test    public void test() {        ApplicationContext context = new ClassPathXmlApplicationContext("classpath*:resources/spring/**/application*.xml");        TCyrusUserService service = context.getBean("userService",TCyrusUserService.class);        TCyrusUser user = new TCyrusUser();        service.save(user);    }}

转载于:https://www.cnblogs.com/smashed/p/3986418.html

你可能感兴趣的文章
centos7 安装中文编码
查看>>
POJ - 3683 Priest John's Busiest Day
查看>>
正则表达式start(),end(),group()方法
查看>>
vuejs 学习旅程一
查看>>
javascript Date
查看>>
linux常用命令2
查看>>
狼图腾
查看>>
13、对象与类
查看>>
Sublime Text3 个人使用心得
查看>>
jquery 编程的最佳实践
查看>>
MeetMe
查看>>
IP报文格式及各字段意义
查看>>
(转载)rabbitmq与springboot的安装与集成
查看>>
C2. Power Transmission (Hard Edition)(线段相交)
查看>>
STM32F0使用LL库实现SHT70通讯
查看>>
Atitit. Xss 漏洞的原理and应用xss木马
查看>>
MySQL源码 数据结构array
查看>>
(文件过多时)删除目录下全部文件
查看>>
T-SQL函数总结
查看>>
python 序列:列表
查看>>