一、 Bean的定义,初始化,使用和销毁

二、ref指定依赖的三种模式

三、Bean的五种自动装配模式(autowire)

四、Bean依赖检查的4种模式:配合atuowire使用,dependency-check=""

五、集合的注入方式

六、管理Bean

config.xml文件
<!--Bean的配置文档-->
<!--首先定义为XML的方式来存储Bean的配置-->
<?xml version="1.0" encoding="UTF-8"?>
<!--声明使用的是http://www.springframework.org/dtd/spring-beans.dtd-->
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframenwork.org/dtd/spring-beans.dtd">
<!--配置Bean的开始,根节点Beans中包含一个或多个Bean元素-->
<beans>
    <bean id="" class="" init-mehod="" destory-method="" autowire="" dependecy-check="">
        <property>
            <value></value>
        </property>    
    </bean>
    
</beans>

一、 Bean的定义,初始化,使用和销毁

1.Bean的定义
2.初始化
 init-method方法
 实现InitializingBean接口,增加afterPropertiesSet()方法;
3.Bean的使用
使用有三种方式:
1)Beanwrapper
HelloWorld hellworld=new HelloWorld();
BeanWrapper bw=new BeanWrapperImpl(helloworld);
bw.setPropertyValue("msg","helloworld");
bw.getPropertyValue("msg");

2)BeanFactory
InputStream is=new FileInputStream("config.xml");
xmlBeanFactory factory=new xmlBeanFactory(is);
HelloWorld helloWorld=(HelloWorld)factory.getBean("HelloWorld");
helloWorld.getMsg();

3)ApplicationContext
ApplicationContext actx =new FileSystemXmlApplicationContext("config.xml");
HelloWorld HelloWorld = (HelloWorld)actx.getBean("HelloWorld");
HelloWorld.getMsg();

4.Bean的销毁
1)destory-method
2)实现org.springframework.beans.factory.DisposableBean接口,增加destory()方法

二、ref指定依赖的三种模式
1.local
2.bean
3.parent
<property>
    <ref="local"/>||<ref="bean"/>||<ref="parent"/>
<property>

三、Bean的五种自动装配模式(autowire)
1.byName
2.byType
3.constructor
4.autodetect:有constructor就调用constructor,没有的用byType
5.no:默认,不自动装配

四、Bean依赖检查的4种模式:配合atuowire使用,dependency-check=""
1.simple 对基本数据类型,字符串等进行检查
2.object 对于依赖的对象进行检查
3.all (包含simple和object)
4.none

五、集合的注入方式
1.list-Lis
<property name="">
    <list>
        <value></value>
        <value></value>
        <value></value>
    </list>
</property>
2.set-Set
<property name="">
    <set>
        <value></value>
        <value></value>
        <value></value>
    </set>
</property>
3.map-Map
<property name="">
<map>
    <entry key="">
        <value></value>
    </entry>
</map>
</property>

4.props-Properties
<property name="">
    <props>
        <prop key="">HelloWorld</prop>
    </props>
</propertiry>

六、管理Bean
1.BeanWrapper
2.BeanFactory
3.ApplicationContext

Spring基础学习笔记-Bean的基础知识的更多相关文章

  1. [Spring MVC]学习笔记--基础Servlet

    Servlet是一个用Java编写的应用程序,在服务器上运行,处理请求的信息并将其发送到客户端. Servlet的客户端提出请求并获得该请求的响应. 对于所有的客户端请求,只需要创建Servlet的实 ...

  2. Java基础学习笔记七 Java基础语法之继承和抽象类

    继承 继承的概念 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系. 例如公司中的研发部员工和维护部员工都属于员工, ...

  3. Java基础学习笔记八 Java基础语法之接口和多态

    接口 接口概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”.接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成.这样将功能的定义 ...

  4. Java基础学习笔记二 Java基础语法

    注释 注释用来解释和说明程序的文字,注释是不会被执行的. 单行注释 //这是一条单行注释 public int i; 多行注释 /* 这是 * 一段注释, * 它跨越了多个行 */ public vo ...

  5. Java基础学习笔记四 Java基础语法

    数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻 ...

  6. Java基础学习笔记三 Java基础语法

    Scanner类 Scanner类属于引用数据类型,先了解下引用数据类型. 引用数据类型的使用 与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式. 数据类型 变量名 ...

  7. Java基础学习笔记六 Java基础语法之类和ArrayList

    引用数据类型 引用数据类型分类,提到引用数据类型(类),其实我们对它并不陌生,如使用过的Scanner类.Random类.我们可以把类的类型为两种: 第一种,Java为我们提供好的类,如Scanner ...

  8. Java基础学习笔记五 Java基础语法之面向对象

    面向对象 理解什么是面向过程.面向对象 面向过程与面向对象都是我们编程中,编写程序的一种思维方式.面向过程的程序设计方式,是遇到一件事时,思考“我该怎么做”,然后一步步实现的过程.例如:公司打扫卫生( ...

  9. Java基础学习笔记九 Java基础语法之this和super

    构造方法 我们对封装已经有了基本的了解,接下来我们来看一个新的问题,依然以Person为例,由于Person中的属性都被private了,外界无法直接访问属性,必须对外提供相应的set和get方法.当 ...

随机推荐

  1. Android之layout_weight解析

    我们先来看以下这段Android布局代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/androi ...

  2. JavaScript -- 小试牛刀

    //var a = parseInt(window.prompt("请输入一个数字!","")); //switch(a) { // case 1 : // c ...

  3. STM32f103之外部中断

    一.背景 有个需求,IO口检测上升沿,然后做相应的动作.在此记录STM32F103的外部中断结构及配置方法, 以备下次快速上手使用. 有许多不太明白,又是老司机(:-D)帮忙,真的是站在别人的肩膀上会 ...

  4. 利用Nginx实现域名转发 不修改主机头

    在conf下 新建一个 文件 格式 : 域名.conf  例如:www.test.com.conf 文件里配置: server{ listen 80; server_name www.test.com ...

  5. C和指针 第九章 字符串 字符 字节

    C语言中没有字符串类型,字符串是以NUL结尾的字符数组组成的. 高级字符串查找: //计算字符串起始部分,有多少字符是在group中 size_t strspn(char const * str, c ...

  6. ubuntu配置 Java SE 1.6

    今天编译android 4.0时提示如下错误:   You are attempting to build with the incorrect version of java. Your versi ...

  7. BZOJ 1833: [ZJOI2010]count 数字计数

    Description 问 \([L,R]\) 中0-9的个数. Sol 数位DP. 预处理好长度为 \(i\), 最高位为 \(j\) 的数位之和. 然后从上往下计算,不要忘记往下走的同时要把高位的 ...

  8. C# mongodb 驱动操作(Z)

    Query.All("name", "a", "b");//通过多个元素来匹配数组 Query.And(Query.EQ("nam ...

  9. go:匿名函数与闭包

    一.匿名函数 定义:没有函数名的函数. 作用:在go语言中目前了解的作用就是用于构成闭包. *注:由于javascript不存在块级作用域,故匿名函数常用来包含代码以不污染全局命名空间,运行后销毁环境 ...

  10. 伪随机数(线性同余法)C语言

    /**Keil Lib*2015.6.12*Pass*by lort*/uint32 Srandx ; uint32 SrandK = 1103515245;//0x41C64E6D;uint32 S ...