spring3.2.5学习(二)——IoC注解配置
2014-09-22 17:47
411 查看
一、前言
这篇随笔主要是记录IoC完全使用Annotation的过程。二、架包以及资源
架包的引入,以及项目结构参考spring3.2.5学习(一)——spring环境配置以及IOC简介;三、配置环境
1.配置applicationContext.xml<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:annotation-config/> <!-- 配置注解扫描 --> <context:component-scan base-package="com.cyrus.platform" /> </beans>
其中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); } }
相关文章推荐
- spring3.2.5学习(一)——spring环境配置以及IOC简介
- JavaWeb学习笔记-spring-06-ioc-基于注解配置
- Spring学习(九)使用ioc注解方式配置bean
- spring学习基础(ioc底层原理,bean的配置和注解)
- Spring学习一:IOC(控制反转)和AOP(面向切面)的xml配置和注解方式
- Spring学习(九)使用ioc注解方式配置bean
- Java 学习笔记05:Spring 基于注解(Annotation)的IOC
- 【Spring】IOC之基于注解的配置bean(上)
- Spring的IOC注解学习
- Spring学习(14)--- 基于Java类的配置Bean 之 @ImportResource & @Value 注解
- 【Java.Spring.Core】【IoC】基于注解的Bean装配(非XML配置)
- 菜鸟学习Spring——SpringIoC容器基于三种配置的对比
- Spring4学习笔记-通过注解配置bean
- Spring-IOC配置(学习笔记)
- Spring学习(15)--- 基于Java类的配置Bean 之 @Bean & @Scope 注解
- 菜鸟学习Spring——SpringIoC容器基于三种配置的对比
- Spring 学习笔记:Ioc 基本配置
- Spring3.1 MVC注解配置学习
- Spring IoC 注解配置
- 重新学习之spring第一个程序,配置IOC容器