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. Collector for ArcGIS的使用体验

    基于Esri的Portal for ArcGIS(下面简称Portal),用户可以搭建一个本地的地理信息云平台.围绕着这个云平台,Esri为不同的终端提供了响应的解决方案,其中Collector fo ...

  2. wemall app商城源码Fragment中监听onKey事件

    wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享android开发Fragment中监听onK ...

  3. wemall app商城源码中基于JAVA的绑定和处理fragments和viewpager之间的逻辑关系代码

    wemall doraemon是Android客户端程序,服务端采用wemall微信商城,不对原商城做任何修改,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可随意定制修改.本文分享其中 ...

  4. js中call、apply、bind那些事

    前言 回想起之前的一些面试,几乎每次都会问到一个js中关于call.apply.bind的问题,比如- 怎么利用call.apply来求一个数组中最大或者最小值 如何利用call.apply来做继承 ...

  5. ajax 提交表单(文件)

    废话不多说,自己看代码 引入的jquery <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js&quo ...

  6. css 超出隐藏显示...

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  7. iOS网络编程笔记——Socket底层实现笔记

    Socket简单底层实现笔记: 以Socket客户端编程为例: 1.导入头文件 #import <arpa/inet.h> #import <netinet/in.h> #im ...

  8. 浅谈对java中锁的理解

    在并发编程中,经常遇到多个线程访问同一个 共享资源 ,这时候作为开发者必须考虑如何维护数据一致性,在java中synchronized关键字被常用于维护数据一致性.synchronized机制是给共享 ...

  9. [译]Selenium Python文档:七、WebDriver API接口

    由于API文档格式不太适合cnblog博客,暂且翻译一部分,且暂未校对 注意:这不是官方文档,官方 API文档在这里. 本章包含Selenium WebDriver的所有接口 推荐import风格 本 ...

  10. IOS百度地图之--->第二篇《大头针__简单使用及自定义》

    呵呵!大家不要只看帖不回帖么,要不然我都没有积极性了. 第一步:创建一个用来呈现mapview的viewcontroller,不废话直接贴代码        BasicMapViewControlle ...