Bean的基本配置

id属性

id属性确定bean的唯一标识符,容器对bean的管理,访问,以及该bean的依赖关系,都通过该属性来完成。bean的id属性在Spring容器中应该是唯一的。

class属性

class属性指定bean的具体实现类,不能是接口(接口不能new对象)。使用类的全名。

实例化Bean的三种方式

调用构造器“new”一个bean实例(最常用的实例化方式。)

调用静态工厂方法创建bean

调用实例工厂方法创建bean

依赖注入方法

1.Setter方法注入

在bean实例化完成之后进行依赖关系注入。

配置通过property属性指定。

类中要定义对应的Setter方法。

<!-- setter注入实例 -->

<bean id=“paper"   class=“com.sevice.A4Paper">

<property name=“size"><value>A4</value></property>

</bean>

2.构造器方法注入

在bean实例化时,已经完成依赖关系的注入。

通过constructor-arg元素配置。

type属性指定类型。

ref属性指定实例。

<bean id="person" class="org.cric.action.Person">

<constructor-arg type="org.cric.dao.Axe" ref="axe"/></bean>

3.集合类型注入

List注入

使用list元素。对应的类型为java.util.List

Map注入

使用entry元素,为每个项目指定key和value。

对应的类型为java.util.Map

Set注入

使用set元素。

对应的类型为java.util.Set

Properties注入

使用props及prop元素

对应的类型为java.util.Properties

java.util.Properties

public class OrderServiceBean {

     private Set<String> sets = new HashSet<String>();

     private List<String> lists = new ArrayList<String>();

     private Properties properties = new Properties();

     private Map<String, String> maps = new HashMap<String, String>();}

      //这里省略属性的getter和setter方法
<bean id="order" class="cn.itcast.service.OrderServiceBean">

    <property name="lists">

          <list>

     <value>lihuoming</value>

         </list>

      </property>             

      <property name="sets">

         <set>

            <value>set</value>

        </set>

      </property>             

     <property name="maps">

        <map>

            <entry key="lihuoming" value="28"/>

       </map>

     </property>               

     <property name="properties">

        <props>

     <prop key="12">sss</prop>

       </props>

      </property>

</bean>

spring之bean的更多相关文章

  1. Spring中Bean的作用域、生命周期

                                   Bean的作用域.生命周期 Bean的作用域 Spring 3中为Bean定义了5中作用域,分别为singleton(单例).protot ...

  2. Spring中Bean的实例化

                                    Spring中Bean的实例化 在介绍Bean的三种实例化的方式之前,我们首先需要介绍一下什么是Bean,以及Bean的配置方式. 如果 ...

  3. 工厂模式模拟Spring的bean加载过程

    一.前言    在日常的开发过程,经常使用或碰到的设计模式有代理.工厂.单例.反射模式等等.下面就对工厂模式模拟spring的bean加载过程进行解析,如果对工厂模式不熟悉的,具体可以先去学习一下工厂 ...

  4. spring 配置bean

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

  5. 在Spring的bean中注入HttpServletRequest解密

    我们可以在Spring的bean中轻松的注入HttpServletRequest,使用@Autowired HttpServletRequest request;就可以了. 但是,为什么我们可以直接这 ...

  6. spring:bean的定义

    一个完整的Bean的配置文件: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE beans ...

  7. paip.spring 获取bean getBean 没有beanid的情况下

    paip.spring 获取bean  getBean 没有beanid的情况下 spring能自动扫描带有注解的bean文件.. 作者Attilax  艾龙,  EMAIL:1466519819@q ...

  8. spring中bean配置和bean注入

    1 bean与spring容器的关系 Bean配置信息定义了Bean的实现及依赖关系,Spring容器根据各种形式的Bean配置信息在容器内部建立Bean定义注册表,然后根据注册表加载.实例化Bean ...

  9. Spring(二)Bean入门

    一.BeanFactory介绍 1.1.Bean: 在Spring技术中是基于组件的 最基本了是最常用的单元 其实实例保存在Spring的容器当中 Bean通常被定义在配置文件当中,Bean实例化由S ...

  10. Spring中Bean的命名问题(id和name区别)及ref和idref之间的区别

    Spring中Bean的命名 1.每个Bean可以有一个id属性,并可以根据该id在IoC容器中查找该Bean,该id属性值必须在IoC容器中唯一: 2.可以不指定id属性,只指定全限定类名,如: & ...

随机推荐

  1. Ubuntu下安装Redis并实现远程访问

    之前的一篇随笔写到Redis在Windows下的安装,但目前好多大数据处理的服务是在Linux上的,所以想以Redis为例并实现在Windows上利用C#代码远程访问. 以在Ubuntu下为例,步骤如 ...

  2. Asp.Net MVC 之 Autofac 初步使用1

    Autofac是.NET领域最为流行的IOC框架之一,传说是速度最快的一个: 优点: 它是C#语言联系很紧密,也就是说C#里的很多编程方式都可以为Autofac使用 较低的学习曲线,学习它非常的简单, ...

  3. HTML 5入门知识(三)

    <canvas>标签 在网页中使用canvas元素,像使用其他HTML标签一样简单,然后利用JavaScript脚本调用绘图API,绘制各种图形.canvas拥有多种绘制路径.矩形.圆形. ...

  4. JavaScript中冒泡排序

    在我大学的时候,就已经接触到过很多的排序方式,只是那时候听得还很懵懂,大概知道这么个东西,也对冒泡排序有点印象,但真要我写,我是写不出来的.最近,在回顾js基础的时候,又接触到了冒泡排序.于是,就把冒 ...

  5. C#:查询某年(1900-2100)某月的日历

    using System;using System.Collections.Generic;public class Program    {     /********************主函数 ...

  6. 4063: [Cerc2012]Darts

    4063: [Cerc2012]Darts Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 85  Solved: 53[Submit][Status] ...

  7. JSOI2015 一轮省选 个人题解与小结

    T1: 题目大意:现有一个以1为根节点的树,要求从1开始出发,经过下面的点然后最终要回到根节点.同时除了根节点之外各点均有一个权值(即受益,每个点上的收益只能拿一次,且经过的话必须拿),同时除了根节点 ...

  8. web从入门开始(1)------简介

    服务端与客户端 HTML简介

  9. (1) 类构造块,this(),static,单例模式串讲

    类构造块 在类只用一对大括号包含的内容,构造所有的对象时都会执行的内容,如果某个类有好几个够赞函数,公共部分抽取出来,放到构造块中. clas Boy { ... { syso("哭...& ...

  10. Java实现非递归删除目录

    最近在学C#的文件系统, 发现C#的文件系统貌似比java的东西少一点, 居然连删除目录都直接做好封装了, 想到学java的时候还要自己写递归删除, 好像没写过非递归的,就在网上查了下, 关于非递归删 ...