Spring API中的bean如何初始化

时间:2015-07-01 10:12:12

标签: java spring spring-bean

根据我的理解,

- >在我的xml中定义几个spring bean,

- >在web.xml中加载xml,这在我的应用程序中可用

问题

如何初始化Spring的内部bean,我不包含Spring中的任何xml,是通过Name Space .. ??

什么触发Spring内部bean使用我们的应用程序bean加载/初始化。

例如,要读取xml文件中定义的bean,我们在web.xmlscan our package中提供并启用component scan,以扫描带注释的bean。

但是Spring jar中的Spring bean,beans / classes呢。

2 个答案:

答案 0 :(得分:0)

只要设置了Spring ApplicationContext,就会初始化Spring-internal bean。这可以通过编程方式完成:

{{1}}

或者通过配置DispatcherServlet来隐式配置幕后配置WebApplicationContext

答案 1 :(得分:-1)

你可以用不同的方式配置Spring;如果你不需要Spring MVC,你可以使用这个

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

如果你想拦截http请求,你可以使用这个

<servlet>
    <servlet-name>rest</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
        your xml(s) here.xml
        </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

网址的映射如下:

<servlet-mapping>
    <servlet-name>rest</servlet-name>
    <url-pattern>/rest/*</url-pattern>
</servlet-mapping>

您还可以按照here

所述配置没有web.xml的Spring

这些配置会触发一个Spring类(DispatcherServlet,ContextLoaderListener,取决于您使用的内容),它读取xml文件(如果使用Spring JavaConfig,则为Java类),并加载构建应用程序上下文所需的所有内部spring bean。