Spring的依赖注入可以基于xml配置,也可以基于注解配置,还可以基于java类配置。

普通的bean类,只要标注了@Configuration注解,就可以为Spring容器提供Bean定义的信息。

每一个标注了@Bean的类方法,相当于提供了Bean的定义信息,可以实现依赖注入。

示例代码:

@Configuration
public class AppConf{
@Bean
public UserDao userDao(){
return new UserDao();
} @Bean
public LogDao logDao(){
return new LogDdao();
} @Bean
public LogonService logonService(){
LogonService logonService=new LogonService();
logonService.setLogDao(logDao());
logonService.setUserDao(userDao());
return logonService;
} }

以上代码和以下xml配置是等效的:

<bean  id="userDao" class="com.anno.UserDao"/>
<bean id="logDao" class="com.anno.LogDao"/>
<bean id="logonService" class="com.LogonService"
p:logDao-ref="userDao" p:userDao-ref="logDdao"/>

注:

p表示对该bean里面的属性进行注入,格式为p:属性名=注入的对象
效果与在bean里面使用<property>标签一样

参考自《精通Spring企业应用开发实战》

通过@Configuratin配置Bean的更多相关文章

  1. Spring下如何配置bean

    本次讲述项目背景: 创建Service类,Service下用到dao类.通过在Spring中配置bean,实现在项目启动时,自动加载这个类 本次只讲述配置bean的注意事项,故只给出简单实例: 创建S ...

  2. Spring学习记录(十)---使用FactoryBean配置Bean

    之前学了,配置bean可以用普通全类名配置.用工厂方法配置,FactoryBean又是什么呢 有时候配置bean要用到,IOC其他Bean,这时,用FactoryBean配置最合适. FactoryB ...

  3. Spring学习记录(九)---通过工厂方法配置bean

    1. 使用静态工厂方法创建Bean,用到一个工厂类 例子:一个Car类,有brand和price属性. package com.guigu.spring.factory; public class C ...

  4. Spring--通过注解来配置bean【转】

    Spring通过注解配置bean 基于注解配置bean 基于注解来配置bean的属性在classpath中扫描组件 组件扫描(component scanning):Spring能够从classpat ...

  5. spring 配置bean

    Main(测试方法) public class Main { public static void main(String[] args) { //1.创建Spring 的IOC容器对象: //spr ...

  6. [原创]java WEB学习笔记103:Spring学习---Spring Bean配置:基于注解的方式(基于注解配置bean,基于注解来装配bean的属性)

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  7. 通过工厂方式配置bean

    src\dayday\CarFactoryBean.java package dayday;import org.springframework.beans.factory.FactoryBean;/ ...

  8. Spring 学习笔记 3. 尚硅谷_佟刚_Spring_配置 Bean

    1,bean 的配置 <bean id="helloWorld" class="com.yfy.HelloWorld"> <property ...

  9. Spring-Context之三:使用XML和Groovy DSL配置Bean

    在第一讲中显示了如何使用注解配置bean,其实这是Spring3引进的特性,Spring2使用的是XML的方式来配置Bean,那时候漫天的XML文件使得Spring有着配置地狱的称号.Spring也一 ...

随机推荐

  1. 发现TypeScript中同名interface接口会自动合并的特性

    今天在学习怎么用TypeScript给jQuery写扩展插件时发现一个很有趣的事情

  2. SharePoint 2013的100个新功能之搜索(一)

    一:新的搜索架构 SharePoint 2013中将最好的两个搜索引擎"SharePoint搜索"和"SharePoint FAST搜索服务"整合到了一个搜索引 ...

  3. [leetcode] 101. Symmetric Tree 对称树

    题目大意 #!/usr/bin/env python # coding=utf-8 # Date: 2018-08-30 """ https://leetcode.com ...

  4. 【转】Linux中文件的可读,可写,可执行权限的解读以及chmod,chown,chgrp命令的用法

    chmod是更改文件的权限 chown是改改文件的属主与属组 chgrp只是更改文件的属组. 一.文件权限解读 如上图所示,开头的-rwxrw-r--这一字符串标识文件权限. 这个字符串有10位,可以 ...

  5. Windows下MySQL多实例运行

    1.正常安装Windows版的MySQL,例如安装在C:\Program Files\MySQL文件夹里: 2.按照常规配置好MySQL: (注:5.6版本的 data文件夹与 my.ini文件在C: ...

  6. MySQL 练习题4

    1.表结构如下: #课程表 CREATE TABLE `course` ( `c_id` ) NOT NULL, `c_name` ) DEFAULT NULL, `t_id` ) DEFAULT N ...

  7. graphql-yoga 项目简单使用&&集成docker

      graphql-yoga 是一个实现了grahql的框架,使用简单,便捷 具体源码参考github https://github.com/rongfengliang/graphql-yoga-do ...

  8. OLEDB操作Excel

    使用OLEDB操作Excel 的方法 OleDbConnection conn = null;            try            {              //fileName ...

  9. vs2005 sp1 补丁的安装问题

    最近做windows mobile 6.0的手机软件开发,听说用vs2005 开发的话最少得装vs2005 sp1,于是去官网上下了VS80sp1-KB926604-X86-CHS.exe 补丁 .运 ...

  10. IT项目管理工具总结

    IT项目管理工具总结 俗话说"工欲善其事必先利其器",在一个项目开发流程中,如果搭配一个比较完善的项目管理工具,必将取得事半功倍的效果.本文搜集了目前项目管理界比较有规模的管理工具 ...