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

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

廖万里3年前 (2022-11-09)学习笔记113129

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框架提供的多种属性注入方式” 的相关文章

JavaWeb项目分页功能讲解

JavaWeb项目分页功能讲解

分页简介分页功能在网页中是非常常见的一个功能,其作用也就是将数据分割成多个页面来进行显示。使用场景: 当取到的数据量达到一定的时候,就需要使用分页来进行数据分割。当我们不使用分页功能的时候,会面临许多的问题:客户端的问题: 如果数据量太多,都显示在同一个页面的话,会因为页面太长严...

java web js验证表单(不通过不提交后台)

java web js验证表单(不通过不提交后台)

Register.htmlform表单提交时什么也不填,从前台取到后台是空,不是null通过document的submit()方法<html>   <head>   <meta charset = ...

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

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

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

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

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

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

pyton打包成exe程序简易教程

我们知道,Python程序需要有python环境才能够运行的,但当我们开发出一个程序之后,给到用户 那么用户是不会去添加这个python环境的。 所以为了用户也能够正常使用,我们就需要将这个程序打包成exe程序。 location.href="https://blog.csd...

使用Python制作电脑无限弹窗恶搞程序教程

使用Python制作电脑无限弹窗恶搞程序教程

 效果如下:编辑演示视频:python弹窗恶搞程序演示视频 教程:1,导入模块,下载模块的方法不过多说明了,可以看我其他的文章有说怎么下载第三方模块,或者Alt+Enter下载也可。# 弹窗恶搞import tkinter as tkimp...

发表评论

访客

看不清,换一张

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