Bean的拓展和应用
  TEZNKK3IfmPf 2023年11月12日 59 0

一.Bean的作用域

1.单例模式(spring的默认机制,即拿相同的bean的时候对象都是相同的,不会造成资源浪费)

<bean id="user" class="top.lostyou.pojo.user" p:name="jay周" p:sex="男" scope="singleton"/>

2.原型模式:每次从容器中get的时候,都会产生一个新的对象!(比较浪费资源)

<bean id="user" class="top.lostyou.pojo.user" p:name="jay周" p:sex="男" scope="prototype"/>

3.其余的request(每次请求中生效),session,application(全局生效)都是web开发的时候用的

 二.Bean的自动装配

自动装配是spring满足bean依赖的一种方式!

spring会在上下文中自动寻找,并且自动给bean装配属性!

在spring中一共有三种自动装配的方式

  1. 在xml中显示的配置
  2. 在Java中显示的配置
  3. 隐式的自动装配bean(重点)

第一种:byName方式的自动装配

    <bean id="cat" class="top.lostyou.pojo.Cat"/>
    <bean id="dog" class="top.lostyou.pojo.Dog"/>

    <!--
    byName:会自动在容器上下文中查找,和自己对象的set方法后面的值对应的  bean id
      -->
    <bean id="People" class="top.lostyou.pojo.People" autowire="byName">
        <property name="name" value="maming"/>

    </bean>

第一种:byType方式的自动装配

    <bean id="cat" class="top.lostyou.pojo.Cat"/>
    <bean id="dog" class="top.lostyou.pojo.Dog"/>

    <!--
    byName:会自动在容器上下文中查找,和自己对象的class(类型)对应的  bean
      -->
    <bean id="People" class="top.lostyou.pojo.People" autowire="byType">
        <property name="name" value="maming"/>

    </bean>

 注意点:

  • byName的自动装配方式需要保证bean的id唯一性,并且这个bean需要和自动注入的属性set方法一致!
  • byType的自动装配方式需要保证bean的类型唯一性,并且这个bean需要和自动注入的属性类型(class)一致!
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月12日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2024年05月17日   46   0   0 JSpspring
TEZNKK3IfmPf