Spring学习篇02-Bean的xml配置

1.bean标签

  在Spring中,要在xml中配置一个bean,必须使用bean标签这个标签包含了要两个重要的属性:

  id:对bean进行标记在容器中是唯一的

  class:bean的类类型

  scope:表示该bean的实例个数,默认为单例。

2.property标签

  property是bean的子标签,通过它可以向bean实例的属性进行注入,重要属性如下:

    name:对应类的属性

    value:要注入类属性的原始值

    ref:要注入类属性的引用bean的id

property里面可以包含bean的标签,这样property下的bean就是内部bean,内部bean只能在内部使用,外部是不能引用内部bean的。

  property的子标签可以是集合标签,这些集合标签包括list,map,properties等,其具体的使用情况可以参考Spring的帮助文档。

3.constructor-arg标签

对bean对象进行构造注入时要用到的。

4.null标签

5.特殊字符

  <![CDATA[文本内容]]>

6.下面就是例子:

  

<!--通过全类名来配置Bean-->
<bean  id="person1" class="com.lkj.study.beanConfigs.Person">
    
</bean>

<!--通过属性设置方法进行属性注入-->
<bean  id="person2" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <property name="name" value="张三"></property>
    <property name="age">
        <value>123</value>
    </property>
</bean>

<!--通过构造方法进行属性注入-->
<bean  id="person3" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <constructor-arg value="zhangsan"></constructor-arg>
    <constructor-arg value="152"></constructor-arg>
</bean>

<bean  id="person4" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <constructor-arg ><null></null></constructor-arg>
    <constructor-arg value="152"></constructor-arg>
</bean>

特殊字符的注入
<bean  id="person5" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <constructor-arg >
    <value><![CDATA[<null>]]></value>
    </constructor-arg>
    <constructor-arg value="152"></constructor-arg>
</bean>

bean的引用;内部Bean是不能被外部引用的
<bean  id="person6" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <property name="personID" ref="personID1"></property>
    <property name="personID.name" value="auti"></property>
</bean>

<bean  id="person7" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <property name="personID" ref="personID1"></property>
    <property name="personID.name" value="auti"></property>
</bean>

<bean id="personID1" class="com.lkj.study.beanConfigs.PersonID">
    <property name="name" value="baoma"></property>
    <property name="price" value="120000"></property>
</bean>

<bean id="car1" class="com.lkj.study.beanConfigs.Car">
    <property name="name" value="baoma"></property>
    <property name="price" value="120000"></property>
</bean>

<bean id="car2" class="com.lkj.study.beanConfigs.Car">
    <property name="name" value="baoma"></property>
    <property name="price" value="120000"></property>
</bean>

<bean  id="person8" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <property name="cars">
        <list>
            <ref bean="car1"/>
            <ref bean="car2"/>
        </list>
    </property>
</bean>

<bean  id="person9" class="com.lkj.study.beanConfigs.Person" scope="prototype" >
    <property name="cars" ref="cars1">
        
    </property>
</bean>

<util:list id="cars1">
        <ref bean="car1"/>
        <ref bean="car1"/>
            <ref bean="car2"/>
</util:list>

时间: 2024-10-18 20:20:58

Spring学习篇02-Bean的xml配置的相关文章

Spring学习笔记——02 Bean的命名及实例化

一.Bean的命名 前一篇讲到IoC是一个管理Bean的容器,Bean多数情况下都是通过XML文件进行配置的,其中Bean的命名有以下几种方式,现在梳理一下. 1. 不指定id,只配置类名 <bean class="com.erving.HelloImpl"></bean> 若要调用该Bean,需要用以下语句: HelloApi helloApi = context.getBean(HelloApi.class); 2. 指定id,且id必须在IoC容器中唯一

Spring IOC的初始化过程——基于XML配置(一)

前言:在面试过程中,Spring IOC的初始化过程,基本上属于必答题,笔者的亲身经历.因此本文基于Spring的源码对其IOC的初始化过程进行总结. 注:spring版本为4.3.0. 1.调试前准备 在spring源码中,添加如下内容(有关spring源码如何导入idea,请查询相关资料): 说明: ①User为简单bean,含有name和gender两个属性. ②User.xml为spring配置文件,仅仅对User进行简单的配置. ③SpringIoCDebug为测试类. 先看执行结果:

spring学习总结——装配Bean学习三(xml装配bean)

通过XML装配bean Spring现在有了强大的自动化配置和基于Java的配置,XML不应该再是你的第一选择了.不过,鉴于已经存在那么多基于XML的Spring配置,所以理解如何在Spring中使用XML还是很重要的.但是,我希望本节的内容只是用来帮助你维护已有的XML配置,在完成新的Spring工作时,希望你会使用自动化配置和JavaConfig. 一.创建XML配置规范 在使用XML为Spring装配bean之前,你需要创建一个新的配置规范.在使用JavaConfig的时候,这意味着要创建

spring项目篇12---网上商城之配置以及工具类的编写

这个项目用到jdbc技术,研究了一下,为了学习一下,对于执行sql语句,自己进行封装工具类来进行处理,这样便于进一步理解. 首先我们来看一下搭建的基本项目结构 我们接下来看一下相关的配置信息: 首先看一下web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="

Spring+SpringMVC+MyBatis+Maven 服务端XML配置

项目目录结构 spring-mybatis.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.spr

Spring 学习笔记02

依赖注入 依赖注入的方式主要有两种,setter注入和构造器注入 1.setter注入 setter注入指的是通过成员变量的setter方法来注入被依赖的对象 首先定义两个接口: public interface People { void drinkWater(); } public interface Water { String makeDrink(); } 定义实现类 public class Tea implements Water{ public String makeDrink()

Spring学习记录(二)---容器和属性配置

下载spring包,在eclipse搭建spring环境. 这步我在eclipse中无法导入包,看网上的: http://sishuok.(和谐)com/forum/blogPost/list/2428.html 建一个java project 三个java文件,一个xml文件 1 package com.guigu.spring.beans; 2 3 public class HelloWord { 4 private String name; 5 public String getName(

spring学习——Ioc基础三(Ioc配置使用)

一.XML配置的结构  一般配置文件结构如下: <beans>       <import resource="resource1.xml"/>       <bean id="bean1"class=""></bean>       <bean id="bean2"class=""></bean>   <bean name=&q

【Spring六】JDBC编程之XML配置

jdbc编程最主要的就是要引入数据源,常见的有dbcp数据源,c3p0数据源等. 几个重要的类: JdbcTemplate,里面提供了dao的方法,需要提供数据源给他! JdbcDaoSupport RowMapper 说明: 无论采用什么样的方法必须把dataSource注入到JdbcTemplate里 1.继承JdbcDaoSupport(该类有JdbcTemplate) 2.继承JdbcTemplate 3.引入JdbcTemplate 1.xml配置: <beans xmlns="

Spring MVC 的 Java Config ( 非 XML ) 配置方式

索引: 开源Spring解决方案--lm.solution 参看代码 GitHub: solution/pom.xml web/pom.xml web.xml WebInitializer.java WebConfig.java RootConfig.java 一.引入必要类库 spring-context spring-context-support spring-webmvc:引入该包后,maven 会自动解析依赖,引入 spring-web 等包. 1.solution/pom.xml 1