`
vitoer
  • 浏览: 6522 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

@Autowired 注解的工作方式

 
阅读更多
// 定义主从数据库服务器,主数据库负责(Write op),从数据库负责(read op�?
@Autowired
protected SqlMapClientTemplate masterSqlMapClientTemplate;

@Autowired
protected SqlMapClientTemplate slaveSqlMapClientTemplate;
我一直迷惑于项目没有使用读写分离,相应的jdbc也只配了masterSqlMapClientTemplate的数据源,<!-- 根据sqlMapClient创建一个SqlMapClientTemplate的模版类实例sqlMapClientTemplate -->
<bean id="masterSqlMapClientTemplate"
class="org.springframework.orm.ibatis.SqlMapClientTemplate">
<property name="sqlMapClient" ref="masterSqlMapClient" />
</bean>
怎么slaveSqlMapClientTemplate也会起作用呢?
原来@Autowired 的工作方式是按照类型进行匹配的,不是按照后面的那个值,比如SqlMapClientTemplate masterSqlMapClientTemplate;它会在xml查找类型为SqlMapClientTemplate的bean,而不是masterSqlMapClientTemplate,这跟我之前学习的spring稍微有些不同的地方,是因为这个注解很特殊,一般的spring通过xml配置好bean的Id,然后在程序中需要的地方写上注解,它会根据注解的地方拿到这个id的bean,然后装配上对象,而@Autowired这个注解却不是通过id,而是通过类型装配
分享到:
评论

相关推荐

    通过@Autowired注解注入bean的顺序,以及@bean注入.rar

    `@Autowired`和`@Bean`是两个关键注解,它们在实现DI时起着重要作用。让我们深入探讨这两个注解的工作原理,以及它们在注入bean时的顺序。 `@Autowired`注解由Spring提供,用于自动装配bean的依赖。当我们在字段、...

    (转)Spring中@Autowired注解和@Resource注解的区别

    在实际应用中,通常推荐使用`@Autowired`,因为它提供了更强大的自动装配能力,包括基于类型、基于 Qualifier、基于父接口等多维度的注入方式。而`@Resource`更适合那些需要基于bean名称注入的场景,或者当你希望...

    Spring@Autowired注解与自动装配.rar

    - **@Autowired注解的可选性**:使用`required`属性控制是否必须注入。默认为`true`,表示必须注入,否则抛出异常;设为`false`则允许不注入。 ```java @Autowired(required = false) private MyService ...

    Spring Ioc源码分析系列--@Autowired注解的实现原理.doc

    Spring Ioc源码分析系列--@Autowired注解的实现原理 @ Автоwired注解是 Spring Framework 中的一个重要组件,它提供了自动装配的功能,能够将 Bean 之间的依赖关系自动解析和注入。今天,我们将深入探讨 @...

    Spring使用@Autowired注解自动装配

    在这个主题中,我们将深入探讨`@Autowired`的工作原理、使用场景以及如何在Spring应用中有效地利用它。 ### 1. 什么是`@Autowired`注解? `@Autowired`是Spring框架的一部分,它用于自动将依赖对象注入到需要它们的...

    @Autowired 注解是如何实现的?(csdn)————程序.pdf

    【@Autowired注解详解及其实现原理】 在Spring框架中,`@Autowired`注解是核心的依赖注入(Dependency Injection,DI)工具,它允许开发者自动地将Bean实例注入到需要的地方,无需显式地通过setter方法或构造函数来...

    SSH笔记-通过@Autowired配置注入关系

    这些注解一起构成了Spring的全面依赖注入机制,使我们能够以声明式的方式管理应用程序的组件和它们之间的关系。 在实际项目中,`@Autowired`的使用大大提高了开发效率,减少了手动管理依赖的繁琐工作。它使得代码...

    基于Spring@Autowired注解与自动装配详谈

    在Spring 2.5中引入了@Autowired注解,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。使用@Autowired可以消除set、get方法,从而简化程序的开发。 在使用@Autowired时,需要在...

    【Java面试】@Resource 和 @Autowired 的区别.doc

    在 Spring 框架中,@Resource 和 @Autowired 是两种常用的依赖注入方式,但是它们之间存在着一些关键的区别。 首先,让我们来了解 @Autowired 注解。@Autowired 是 Spring 框架提供的一个注解,默认是根据类型来...

    使用@Autowired注解警告Field injection is not recommended的解决

    在Spring框架中,`@Autowired`注解用于自动装配bean,简化了依赖注入的过程。然而,IDEA在某些情况下会发出“Field injection is not recommended”的警告。这是因为直接在字段上使用`@Autowired`虽然简洁,但并不...

    12 @Autowired是如何工作的?-Spring注解源码深度揭秘-慕课专栏1

    本文将深入探讨`@Autowired`的工作原理以及其在Spring中的实现方式。 首先,`@Autowired`的基本作用是自动装配Bean,即Spring容器会自动将合适的依赖注入到标记了该注解的构造函数、字段、setter方法或配置方法中。...

    学习Spring笔记_Annotation(注解)_Autowired_Qualifier

    `@Autowired`注解还支持一些可选属性,例如`required`(默认为true,表示必须注入,否则抛出异常),以及`@Autowired`可以应用于字段、构造器、方法和参数级别,提供了灵活的注入方式。 除了`@Autowired`,Spring...

    Spring的Autowired自动装配(XML版本+Annotation版本+源码+解析)

    随着Spring的发展,@Autowired注解应运而生,这是Annotation版本的自动装配。它允许开发者在类的字段、方法或构造器上直接声明依赖,大大减少了XML配置的量。例如: ```java @Service public class UserService { ...

    spring autowired注解完整版

    综上所述,Spring 的 @Autowired 注解是基于类型和名称的依赖注入机制,结合 @ComponentScan 和其他组件注解,提供了更简洁、自动化的方式来管理 Bean 的生命周期和依赖关系,从而降低了 XML 配置的复杂性。...

    Spring注解@Resource和@Autowired.doc

    Spring 注解@Resource 和@Autowired Spring 框架中提供了两个重要的注解,分别是@Resource 和@Autowired,它们都是用于 bean 的自动装配的。了解这两个注解的区别和使用场景是非常重要的。 首先,@Autowired 是 ...

    Spring使用@Autowired为抽象父类注入依赖代码实例

    Spring框架中,使用@Autowired注解可以将依赖项注入到Bean中,但是当我们需要将依赖项注入到抽象父类时,会遇到一些问题。如果我们直接使用@Autowired注解在抽象父类中,可能不会生效,因为抽象父类不能被实例化。...

    HibernateDaoSupport 与@Autowired

    `@Autowired`有以下几种使用方式: 1. 字段注入:直接在字段上使用`@Autowired`。 2. 构造器注入:在构造器参数上使用`@Autowired`。 3. 方法注入:在setter方法或带有`@PostConstruct`注解的方法上使用`@Autowired...

    Spring In Action 使用@Autowired 和@ Resource 自动装配Bean

    在Spring框架中,`@Autowired`和`@Resource`都是用于自动装配Bean的重要注解,它们简化了依赖注入的过程,使得代码更加简洁、易于维护。本文将深入探讨这两个注解的使用、区别以及如何在实际开发中应用它们。 首先...

    Intellij IDEA如何去掉@Autowired 注入警告的方法

    Intellij IDEA如何去掉@Autowired 注入警告的方法 在本篇文章中,我们将探讨如何在...去掉@Autowired 注入警告的方法可以使用构造器注入或Setter注入,避免使用Field注入,并使用Lombok提供的注解来简化我们的代码。

    Spring @Autowired

    接下来,我们将深入探讨`@Autowired`的工作原理、使用场景以及相关的最佳实践。 ### 1. `@Autowired`的基本用法 `@Autowired`注解可以用于字段、方法和构造函数,表明Spring容器会在运行时自动为这些成员提供合适...

Global site tag (gtag.js) - Google Analytics