依赖注入(DI : Dependency Injection)是基于.xml配置文件内节点的书写。

  注入类型:

      1.设置注入,调用了Bean的setXXX()进行值注入

   普通属性(value值表示要显示的字符串)

    <property name="name" value="托尼"></property>
    <property name="age" value="20"></property>

   域属性(ref属性指向的是普通属性的name值)

    <property name="myCar" ref="name"></property>

   构造注入:

    <bean id="stu2" class="cn.tony.entity.Student">

      <constructor-arg index="0" value="托尼"></constructor-arg>
      <constructor-arg index="1" value="20"></constructor-arg>
      <constructor-arg index="2" ref="mmCar"></constructor-arg>
    </bean>

   命名空间p注入(p:name对应实体类中的name属性。如,p:info对应了User实体类中的info属性):

     使用p命名空间进行改进配置,注意使用前要先添加p命名空间的声明。

       xmlns:p="http://www.springframework.org/schema/p"

      在.xml中书写如下:

     <!-- p标签注入 -->

     <bean id="stu3" class="cn.tony.entity.User"
      p:name="国庆放假买手机" p:info="100块">
     </bean>

  使用注解进行注入:

    在.xml中添加context命名空间的声明

      xmlns:context="http://www.springframework.org/schema/context"

    配置如下节点

      <!--  base-package指向的是包文件,实体类包  -->

      <context:component-scan base-package="cn.tony.entity">

      </context:component-scan>

    在entity包下的UserInfo实体类中书写如下:

 <!--  Component相当于Bean的id属性  -->
      @Component("info")
      public class UserInfo {
      @Value("yellow")
      private String color;       public String getColor() {
        return color;
      }       public void setColor(String color) {
        this.color = color;
      }       }

UserInfo实体类

Spring框架中的依赖注入的更多相关文章

  1. Spring框架学习之依赖注入

    Spring框架从2004年发布的第一个版本以来,如今已经迭代到5.x,逐渐成为JavaEE开发中必不可少的框架之一,也有人称它为Java下的第一开源平台.单从Spring的本身来说,它贯穿着整个表现 ...

  2. [转]使用@Test 也可以从spring容器中获取依赖注入

    转自:http://blog.csdn.net/u010987379/article/details/52091790 @RunWith(SpringJUnit4ClassRunner.class) ...

  3. 类比Spring框架来实现OC中的依赖注入

    如果你之前使用过JavaEE开发中的Spring框架的话,那么你一定对依赖注入并不陌生.依赖注入(DI: Dependency Injection)是控制反转(IoC: Inversion of Co ...

  4. JavaEE开发之Spring中的依赖注入与AOP

    上篇博客我们系统的聊了<JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建>,并在之前的博客中我们聊了依赖注入的相关东西,并且使用Objective-C的R ...

  5. JavaEE开发之Spring中的依赖注入与AOP编程

    上篇博客我们系统的聊了<JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建>,并在之前的博客中我们聊了依赖注入的相关东西,并且使用Objective-C的R ...

  6. Spring学习(一)——Spring中的依赖注入简介【转】

      [前面的话] Spring对我太重要了,做个关于web相关的项目都要使用Spring,每次去看Spring相关的知识,总是感觉一知半解,没有很好的系统去学习一下,现在抽点时间学习一下Spring. ...

  7. Spring学习(一)——Spring中的依赖注入简介

    [前面的话] Spring对我太重要了,做个关于web相关的项目都要使用Spring,每次去看Spring相关的知识,总是感觉一知半解,没有很好的系统去学习一下,现在抽点时间学习一下Spring.不知 ...

  8. Spring学习(三)——Spring中的依赖注入的方式

    [前面的话] Spring对我太重要了,做个关于web相关的项目都要使用Spring,每次去看Spring相关的知识,总是感觉一知半解,没有很好的系统去学习一下,现在抽点时间学习一下Spring.不知 ...

  9. 细说shiro之五:在spring框架中集成shiro

    官网:https://shiro.apache.org/ 1. 下载在Maven项目中的依赖配置如下: <!-- shiro配置 --> <dependency> <gr ...

随机推荐

  1. 001-SaltStack入门篇(一)之SaltStack部署

    早期运维工作中用过稍微复杂的Puppet,下面介绍下更为简单实用的Saltstack自动化运维的使用. Saltstack知多少Saltstack是一种全新的基础设施管理方式,是一个服务器基础架构集中 ...

  2. nasm

    sudo apt install nasm 64bit: nasm -f elf64 test.asm ld -s -o test test.o --------------------------- ...

  3. windows2008r2防火墙设置一例

    有台dell R420服务器,系统windows2008r2 扫描出安全漏洞,按照默认开启防火墙,结果远程桌面上不去了,远程桌面端口号是10086,需要在 控制面板\所有控制面板项\Windows 防 ...

  4. DevExpress WPF v19.1新版亮点:主题/Tree List等控件新功能

    行业领先的.NET界面控件DevExpress 日前正式发布v19.1版本,本站将以连载的形式介绍各版本新增内容.在本系列文章中将为大家介绍DevExpress WPF v19.1中新增的一些控件及部 ...

  5. 八、asynicio模块以及爬虫应用asynicio模块(高性能爬虫)

    asynicio模块以及爬虫应用asynicio模块(高性能爬虫) 一.背景知识 爬虫的本质就是一个socket客户端与服务端的通信过程,如果我们有多个url待爬取,只用一个线程且采用串行的方式执行, ...

  6. Python服务器开发三:Socket

    Python服务器开发三:Socket   socket是操作系统中I/O的延续,它可以使进程和机器之间的通信成为可能.socket可以看成一个标准的文件描述符.不同的是文件需要用open()函数打开 ...

  7. HYSBZ-4033-树上染色(树上DP)

    链接: https://vjudge.net/problem/HYSBZ-4033 题意: 有一棵点数为N的树,树边有边权.给你一个在0~N之内的正整数K,你要在这棵树中选择K个点,将其染成黑色,并 ...

  8. fail2ban CentOS7安装

    一.安装1.安装yum install shorewall gamin-python shorewall-shell shorewall-perl shorewall-common python-in ...

  9. Elasticsearch:aggregation介绍

    聚合(aggregation)功能集是整个Elasticsearch产品中最令人兴奋和有益的功能之一,主要是因为它提供了一个非常有吸引力对之前的facets的替代. 在本教程中,我们将解释Elasti ...

  10. aspose 模板输出

    Dictionary<string, string> dictionnaryBig = new Dictionary<string, string>(); dictionnar ...