Spring Boot——Spring回顾——Spring常用配置

Scope

概述:Scope描述的是Spring容器如何新建Bean的实例的,Spring的scope有以下几种,通过@Scope注解来实现。

1)Singleton:一个Spring容器中只有一个Bean的实例,此为Spring的默认配置,全容器共享一个实例。

2)Prototype:每次调用新建一个Bean的实例。

3)Request:Web项目中,给每一个http request新建一个实例。

4)Session:Web项目中,给每一个http session新建一个实例。

5)GlobalSession:这个只在portal应用中有用,给每一个global http session新建一个实例。

Spring EL和资源调用

Bean的初始化和销毁

Profile

Profile为在不同的环境下使用不同的配置提供了支持(开发环境下的配置和生产环境下的配置肯定是不同的,例如,数据库配置)

1)通过设定Environment的Activeprofiles来设定当前context需要使用的配置环境。在开发中使用@Profile注解类或方法,达到不同环境下选择实例化不同的Bean。

2)通过设定jvm的spring.profiles.active参数来设置配置环境。

3)Web项目设置在Servlet的context parameter中。

Servlet2.5及以下:

<init-param>
  <param-name>spring.profiles.active</param-name>
  <param-value>production</param-value>
</init-param>

 Servlet3.0及以上:

public class WebInit implements WebApplicationInitializer{

    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {
        servletContext.setInitParameter("spring.profiles,default","dev");
    }
}

演示

事件(Application Event)

Spring的事件需要遵循如下流程:

1)自定义事件,继承ApplicationEvent。

2)定义事件监听器,实现ApplicationListener。

3)使用容器发布事件。

演示

猜你喜欢

转载自blog.csdn.net/qq_34479912/article/details/83181162