bean标签的属性,bean标签parent

  bean标签的属性,bean标签parent

  永远的神干货盘点

  /*

  **csdn认证讲师

  *51cto高级讲师

  *腾讯课堂认证讲师

  *网易云课堂认证讲师

  *华为开发者学堂认证讲师

  *爱奇艺千人名师计划成员

  *在这里给大家分享技术、知识和生活

  *各种干货,记得关注哦!

  */

  1.编号和名字属性!-同时添加名字和身份证-

  bean id=饮料_01 name=饮料_02

  爪哇代码

  application context application context=new classpathmlapplicationcontext(/application context。XML’);

  /** * 参数1:姓名/id *参数2(可选): 可以指定生成对象类型,如果不填此参数,需进行强转* 两种方式都可以获取!*/

  饮品饮品_01=applicationContext.getBean(饮品_01 ,饮品。类);

  饮品饮品_02=applicationContext.getBean(饮品_02 ,饮品。类);

  2范围属性豆标签中添加范围属性,设置豆对应对象生成规则。

  2.1 scope="singleton "

  单例,默认值,适用于实际开发中的绝大部分情况。

  配置:

  bean id=饮品_01 name=饮品_02 scope=singleton

  测试:

  @Test public void test2(){

  //TODO测试豆标签中范围=单例

  application context application context=new classpathmlapplicationcontext(/application context。XML’);

  饮品饮品_01=applicationContext.getBean(饮品_01 ,饮品。类);

  饮品饮品_02=applicationContext.getBean(饮品_02 ,饮品。类);System.out.println(饮料_01==饮料_ 02);//打印真实的

  2.2范围="原型"

  多例,适用于支柱2中的行为配置

  配置:

  bean id=饮料_01 name=饮料_ 02“scope=”原型

  测试

  @Test public void test2(){ //TODO测试豆标签中范围=原型

  application context application context=new classpathmlapplicationcontext(/application context。XML’);

  饮品饮品_01=applicationContext.getBean(饮品_01 ,饮品。类);

  饮品饮品_02=applicationContext.getBean(饮品_02 ,饮品。类);System.out.println(饮料_01==饮料_ 02);//打印错误的

  3惰性初始化属性注意:只对单例有效,设置scope="singleton "时测试

  延时创建属性。

  lazy-init=false 默认值,不延迟创建,即在启动时候就创建对象。

  lazy-init=true 延迟初始化,在用到对象的时候才会创建对象。

  配置:

  bean id=饮料_01 name=饮料_ 02 scope= singleton lazy-init= false

  测试1:lazy-init=false

  @Test public void test2(){

  //TODO测试豆标签中的lazy-init=false 默认值application context application context=new classpathmlapplicationcontext(/application context。XML’);

  System.out.println(获取对象之前!);

  饮品饮品_01=applicationContext.getBean(饮品_01 ,饮品。类);

  饮品饮品_02=applicationContext.getBean(饮品_02 ,饮品。类);System.out.println(获取对象之后!);//测试结果:先输出实体类的构造方法-获取数据之前-获取数据之后//证明:错误不延迟创建,在创建应用程序上下文的时候就创建了对象!}

  测试2:lazy-init=true

  @Test public void test2(){ //TODO测试豆标签中的lazy-init=true 默认值

  application context application context=new classpathmlapplicationcontext(/application context。XML’);

  System.out.println(获取对象之前!);

  饮品饮品_01=applicationContext.getBean(饮品_01 ,饮品。类);

  饮品饮品_02=applicationContext.getBean(饮品_02 ,饮品。类);System.out.println(获取对象之后!);//测试结果:先输出获取数据之前-实体类的构造方法-获取数据之后//证明:正确延迟创建,只有在获取的时候创建。}

  四初始化/销毁在喝类中添加初始化方法和销毁方法(名称自定义):

  public void init(){ system。出去。println(饮料的初始化方法);}

  public void destroy(){ system。出去。println(饮料的销毁方法);}

  在配置文件中添加:

  bean id=饮料_01 name=饮料_ 02“scope=”单独lazy-init= true init-method= init destroy-method= destroy

  更多关注

  https://edu.51cto.com/topic/3338.html

  版权归作者所有:原创作品来自博主戴萌先生的博客号,转载授权请联系作者,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: