当前位置:首页 > 学习笔记 > 正文内容

Spring框架提供的多种属性注入方式

廖万里2年前 (2022-11-09)学习笔记113088

1 set注入

注入的成员变量必须要封装  set方法

注入bean

<!--成员变量对象--><!--<bean id="u" class="com.bdqn.User"></bean>--><bean id="s" class="com.bdqn.Student">
   <property name="id" value="1"></property>
   <property name="name" >
      <value>张三</value>
   </property>
   <!--<property name="u" ref="u"></property>-->
   <property name="u" ><!--内置对象-->
      <bean class="com.bdqn.User"></bean>
   </property></bean>

2 p属性注入

头文件:

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

Spring框架提供的多种属性注入方式编辑


3 构造函数注入 

Spring框架提供的多种属性注入方式编辑

 注册 配置文件

3.1 和已经有的构造方法 顺序一致 

3.2和已经有的构造方法  type 每个参数指定类型

3.3和已经有的构造方法  index 从0开始

Spring框架提供的多种属性注入方式
配置文件
编辑


4 特殊类型的注入

private String specialCharacter1; // 特殊字符值1
private String specialCharacter2; // 特殊字符值2

private List<String> list; // List类型
private String[] array; // 数组类型
private Set<String> set; // Set类型
private Map<String, String> map; // Map类型
private Properties props; // Properties类型
private String emptyValue; // 注入空字符串值
private String nullValue = "init value"; // 注入null值

配置文件:

<!-- 使用<![CDATA[]]>标记处理XML特 殊字符 --><property name="specialCharacter1">
   <value><![CDATA[P&G]]></value></property><!-- 把XML特殊字符替换为实体引用 --><property name="specialCharacter2">
   <value>P&amp;G</value></property><!-- 注入List类型 --><property name="list">
   <list>
      <!-- 定义List中的元素 -->
      <value>足球</value>
      <value>篮球</value>
   </list></property><!-- 注入数组类型 --><property name="array">
   <list>
      <!-- 定义数组中的元素 -->
      <value>足球</value>
      <value>篮球</value>
   </list></property><!-- 注入Set类型 --><property name="set">
   <list>
      <!-- 定义Set或数组中的元素 -->
      <value>足球</value>
      <value>篮球</value>
   </list></property><!-- 注入Map类型 --><property name="map">
   <map>
      <!-- 定义Map中的键值对 -->
      <entry>
         <key>
            <value>football</value>
         </key>
         <value>足球</value>
      </entry>
      <entry>
         <key>
            <value>basketball</value>
         </key>
         <value>篮球</value>
      </entry>
   </map></property><!-- 注入Properties类型 --><property name="props">
   <props>
      <!-- 定义Properties中的键值对 -->
      <prop key="football">足球</prop>
      <prop key="basketball">篮球</prop>
   </props></property><!-- 注入空字符串值 --><property name="emptyValue">
   <value></value></property><!-- 注入null值 --><property name="nullValue">
   <null/></property>

测试:

ApplicationContext context=new ClassPathXmlApplicationContext(
        "applicationContext.xml");TestEntity entity = (TestEntity) context.getBean("entity");
entity.showValue();


Ioc依赖注入  

Set  p   构造方法 

Set注入  (封装set 方法)


来自博客:廖万里的博客


本文链接:https://www.kkkliao.cn/?id=246 转载需授权!

分享到:

版权声明:本文由廖万里的博客发布,如需转载请注明出处。


“Spring框架提供的多种属性注入方式” 的相关文章

Python所有的库都在这里了!!强烈建议收藏

Python所有的库都在这里了!!强烈建议收藏

前言嗨喽,大家好呀~又到了学Python时刻~随着大数据和人工智能的发展,Python也与多种科技深深绑定。比如自动化测试,运维,爬虫,数据分析,机器学习,金融领域,后端开发,云计算,游戏开发都有涉及。万丈高楼平地起,Python这座大厦能够如此强大,就是拥有强大的成千上万的库的支持无数牛x的轮子在...

万策云网络工作室旗下高性能服务器,保证用户数据安全

万策云网络工作室旗下高性能服务器,保证用户数据安全

万策云工作室旗下所有业务均使用1T高防高性能服务器,数据定时备份,多台服务器实时同步数据,保障用户数据安全!多台服务器定时备份,企业级安全,50m独享,大带宽抗cc文件实时同步备份,数据库定时备份。主服务器采用T级群防,150G单机防御的国内高性能服务器。秒解机器!真实可测客户数据丢了都可以找回来...

MyBatis-写分页的几种方法,怎么写分页最简单

MyBatis-写分页的几种方法,怎么写分页最简单

1、就是直接使用我们的SQL语句进行分页,也就是在Mapper里面加上分页的语句就好了。比如MySQL添加一个limit 2,4。这种方式弊端很大,比如我们不用MySQL了,所有的代码都要修改。2、MyBatis中的分页的插件PageHelper,3、自己手写分页框架。这种用的比较少,不是说写不出来...

在mybatis中使用mysql存储过程-教学

在mybatis中使用mysql存储过程-教学

mysql  存储过程 ,教程来源:廖万里的CSDNMysql中的方法, 好处:安全,复用。缺点:不利于修改。1,将以下储存过程代码复制到mysql数据库中进行执行DELIMITER ;;CREATE DEFINER=`root`@`localhost`&nb...

python如何连接mysql数据库

python链接mysql数据库要用到pymysql模块中的connect ,connect函数是pymysql模块中 用于连接MySQL数据库的一个函数。 所以连接mysql之前需要先导入pymysql模块 location.href="ht...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。