`
txf2004
  • 浏览: 7134658 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

spring用annotation-autowire配置

 
阅读更多
<?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:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd"

xmlns:context="http://www.springframework.org/schema/context" ><!-- 使用annotation需加上面三行的该内容和下面的一行 -->

<context:annotation-config/>

<bean id="u" class="annotation.autoWire.UserDAOImpl">
</bean>
<bean id="u2" class="annotation.autoWire.UserDAOImpl">
</bean>
<bean id="userService" class="annotation.autoWire.UserService">
</bean>

</beans>


User,java

package annotation.autoWire;
public class User {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}




UserDAO.java

package annotation.autoWire;
public interface UserDAO {
public void save(User user);
}



UserDAOImpl.java

package annotation.autoWire;
public class UserDAOImpl implements UserDAO {
public void save(User user) {
System.out.println("user saved!");
}
}



UserService.java

package annotation.autoWire;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
public class UserService {
private UserDAO userDAO;
public void init() {
System.out.println("init");
}

public void add(User user) {
userDAO.save(user);
}

public UserDAO getUserDAO() {
return userDAO;
}

@Autowired//需配置在setter方法上
public void setUserDAO(@Qualifier("u2") UserDAO userDAO) {
this.userDAO = userDAO;
}

public void destroy() {
System.out.println("destroy");
}
}



UserServiceTest.java

package annotation.autoWire;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class UserServiceTest {
@Test
public void testAnnotationAutoWire() throws Exception {
ApplicationContext ctx = new ClassPathXmlApplicationContext("annotation/autoWire/annotationAutoWire.xml");
UserService service = (UserService)ctx.getBean("userService");
service.add(new User());
System.out.println(service.getUserDAO());
}
}

分享到:
评论

相关推荐

    3Spring使用annotation方式autowire

    本篇将详细探讨"3Spring使用annotation方式autowire"这一主题,包括注解驱动的自动装配(Autowiring)以及相关的源码分析。 ### 一、注解驱动的自动装配 自动装配是Spring框架的一个核心特性,它允许框架自动管理...

    Spring3配置声明式事务

    ### Spring3配置声明式事务详解 #### 一、Spring3中的声明式事务简介 Spring框架提供了两种事务管理方式:编程式事务管理和声明式事务管理。其中声明式事务管理通过配置来实现事务管理,大大简化了代码量,提高了...

    Spring3配置声明式事务[借鉴].pdf

    【Spring3 声明式事务配置】 Spring3 提供了一种更为简洁的方式来配置声明式事务,这使得在处理事务管理时,开发者可以更专注于业务逻辑。声明式事务管理是基于面向切面编程(AOP)的一种实现,它允许开发者通过在...

    如何完成spring的最小化XML配置

    首先,必须在Spring配置中启用注解装配,通过`&lt;context:annotation-config&gt;`标签实现。 1. Spring自带的`@Autowired` `@Autowired`注解默认执行`byType`自动装配。它可以应用于字段、setter方法、构造器和方法...

    spring2.5学习笔记

    - **开始使用Annotation配置Spring**: 从Spring 2.5开始,提供了基于注解的配置方式。 - **@Autowired、@Qualifier**: - **@Autowired**: 自动装配依赖对象。 - **@Qualifier**: 解决多个相同类型的Bean导致的歧义...

    维生药业小项目 SSH简单学习项目

    class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"&gt; &lt;ref bean="dataSource"&gt;&lt;/ref&gt; &lt;prop key="hibernate.dialect"&gt;org.hibernate.dialect....

    第十章 Spring 配置元信息(Configuration Metadata)1

    3. **Spring 容器配置元信息**:这包括XML配置文件中的`beans`元素,它定义了容器的全局属性,如`default-lazy-init`、`default-autowire`等,这些属性影响整个容器的行为。例如,`default-lazy-init`决定了容器是否...

    spring配置详解

    `autowire`属性可以设置为`byName`、`byType`、`constructor`或`default`,让Spring根据bean的名称、类型或构造器自动查找并注入依赖。 七、Spring与其他技术的集成 Spring支持与各种技术的集成,如JDBC、JMS、...

    spring mvc框架下的aop例子

    下面是一个简单的Spring MVC中AOP的例子,分为配置和实现两部分。 ### 配置 1. 在`spring-common.xml`配置文件中,我们需要引入AOP相关的命名空间,并声明一个`&lt;aop:aspectj-autoproxy&gt;`元素。这会告诉Spring容器...

    Spring教材

    Spring 2.0引入了简化XML配置的特性,例如使用`&lt;beans&gt;`标签的`default-autowire`属性,可以全局设置自动装配策略,减少重复的配置。 - **可扩展的XML编写** Spring 2.0增强了XML配置的扩展性,允许用户自定义...

    Spring 配置文件 和详细笔记

    在本文中,我们将深入探讨Spring配置文件的相关知识点,以及如何有效地使用它们。 1. **XML配置文件** - **基本结构**:Spring的XML配置文件通常以`&lt;beans&gt;`元素作为根元素,其中包含多个`&lt;bean&gt;`元素,每个`...

    spring配置文档[文].pdf

    在Spring框架中,配置文件是应用的核心组成部分,它定义了对象的创建、依赖关系以及其它配置细节。在本文档中,我们将深入探讨Spring配置文件的主要元素和特性。 1. **XML配置基础** - `...

    Spring实现自动装配

    在XML配置中,可以使用`autowire="byName"`开启此功能。 4. **基于注解的自动装配(Annotation-Based Auto-Wiring)**:使用`@Autowired`注解在字段、构造函数、方法或参数级别来指示Spring进行自动装配。默认也是...

    马士兵spring学习笔记

    - 使用Spring的Transaction管理器来管理Hibernate事务。 - 通过OpenSessionInViewFilter保持会话持续时间,确保事务的一致性。 #### 七、Struts2+Spring+Hibernate整合 **整合要点:** - Struts2作为Web层框架。 -...

    Struts2+Spring3+MyBatis3完整实例

    网上的东西好大多都不能直接用,自己结合网上资料做了一个Struts2+Spring3+MyBatis3的测试工程,JUnit测试用例和WEB服务。 内涵完整jar包,解压直接可用,包括一个表文件。 Eclipse3.2+Tomcat/5.5+jdk1.5.0_17 - ...

    spring配置文档[定义].pdf

    这份名为"spring配置文档[定义].pdf"的资料详细介绍了Spring配置文件的使用方式,帮助开发者理解如何有效地管理Spring容器中的bean。下面将深入探讨其中的关键知识点。 1. **XML配置基础**: - `...

    20 面试官,请不要再问我@Resource和@Autowire注解的区别了慕课专栏(1)1

    当Spring容器加载XML配置文件时,它会查找`&lt;context:annotation-config&gt;`元素。这个元素的作用是激活Spring对各种注解的支持,包括`@Resource`。这涉及到`ContextNamespaceHandler`,它定义了一系列配置元素的解析器...

    spring框架案例学习文档笔记

    - **Annotation介绍**:使用注解的方式可以简化Spring配置文件的编写。 - **关键注解**: - `@Autowired`:自动注入依赖。 - `@Qualifier`:指定注入的具体Bean。 - `@Resource`:根据名称查找并注入依赖。 - `@...

    Spring配置文件

    8. **调度任务**:配置定时任务,如使用`&lt;task:annotation-driven&gt;`启用基于注解的任务调度。 9. **视图解析器**:配置视图解析器,如`InternalResourceViewResolver`,用于处理请求转发到指定的视图。 总结,...

    SpringBootMybatisGetStart:Mybatis + H2

    SpringBoot MyBatis入门参考: 请在/ resources文件夹中分配一个sql以自动运行,Mapper将在此处,而无需@Autowire 我们可以使用xml / annotation进行配置,这是使用注释/ domain,模型/映射器/ init,自动连线/注入...

Global site tag (gtag.js) - Google Analytics