开发者

SSM spring Bean基础配置实例详解

目录
  • 什么是 Bean?        
  • Bean 的特点
  • 基础配置
  • 别名配置
  • 作用范围

在 Spring 框架中,Bean 是一个非常核心的概念。简单来说,Bean 是 Spring 容器管理的对象,它是由 Spring 容器实例化、配置和管理的。Spring 通过依赖注入(DI)将这些 Bean 组合在一起,形成一个完整的应用程序。

什么是 Bean?        

Bean 是 Spring 框架中的一个基本单元,通常是一个普通的 Java 对象(POJO),但它被 Spring 容器管理。Spring 容器负责 Bean 的生命周期,包括创建、初始化、依赖注入、销毁等。

Bean 的特js

实例化

  • Spring 容器负责创建 Bean 的实例。
  • 可以通过配置文件(XML)、注解(如 @Component@Service@Controller@Repository)或 Java 配置类来定义 Bean。

依赖注入

  • Spring 容器会自动注入 Bean 所需的依赖关系。
  • 依赖注入可以通过构造器注入(Constructor Injection)或 setter 方法注入(Setter Injection)来实现。

生命周期管理

  • Spring 容器管理 Bean 的生命周期,包括初始化、使用和销毁。
  • 可以通过实现 InitializingBean 接口或定义 @PostConstruct 注解的方法来定义初始化逻辑。
  • 可以通过实现 DisposableBean 接口或定义 @PreDestroy 注解的方法来定义销毁逻辑。

作用域

  • Bean 可以有不同的作用域,如 singleton(单例)、prototype(原型)、request(请求)、session(会话)等。
  • 默认情况下,Bean 的作用域是 singleton,即容器中只有一个实例。

基础配置

SSM spring Bean基础配置实例详解

 
<?xml version编程客栈="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--name:为bean指定别名,别名可以有多个,使用逗号,分号,空格进行分隔-->
    <bean id="bookService" name="service service4 bookEbi" class="com.itheima.service.impl.BookSephprviceImpl">
        <property name="bookDao" ref="bookDao"/>
    </bean>

别名配置

SSM spring Bean基础配置实例详解

作用范围

默认创建为单例对象 scope 默认 singleton

运行如下代码

package com.itheima;
import com.itheima.dao.BookDao;
import com.itheima.service.BookService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class AppForScope {
    public static void main(String[] args) {
        ApplicationConwww.devze.comtext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        BookDao bookDao1 = (BookDao) ctx.getBean("bookDao");
        BookDao bookDao2 = (BookDao) ctx.getBean("bookDapythono");
        System.out.println(bookDao1);
        System.out.println(bookDao2);
    }
}

输出如下:

SSM spring Bean基础配置实例详解

这时应在bean对象配置里加入参数scope。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    <!--name:为bean指定别名,别名可以有多个,使用逗号,分号,空格进行分隔-->
    <bean id="bookService" name="service service4 bookEbi" class="com.itheima.service.impl.BookServiceImpl">
        <property name="bookDao" ref="bookDao"/>
    </bean>
    <!--scope:为bean设置作用范围,可选值为单例singloton,非单例prototype-->
    <bean id="bookDao" name="dao" class="com.itheima.dao.impl.BookDaoImpl" scope="prototype" />
</beans>

SSM spring Bean基础配置实例详解

SSM spring Bean基础配置实例详解

到此这篇关于SSM spring Bean基础配置的文章就介绍到这了,更多相关SSM spring Bean配置内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜