小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Spring 一些標(biāo)簽的作用,ContextLoaderListener和DispatcherServlet兩者的配置文件的區(qū)別

 IT民工收藏 2014-07-29
本文將這樣展開:
1. 簡(jiǎn)單講解Spring中的<context:component-scan /> <context:annotation-config /> 
<mvc:annotation-driven /> 這三者的作用
2. 講解下我們經(jīng)??吹降脑趙eb.xml文件中定義的ContextLoaderListener和DispatcherServlet的區(qū)別

<context:annotation-config />
這個(gè)標(biāo)簽告訴Spring到bean類中尋找一些annotation定義的類,
這些annotation基本如下:
@Autowired  @PostConstruct  @PreDestroy  @Resource 等。
需要注意的是。這個(gè)標(biāo)簽并沒有激活@Transactional 和 @TransactionAttribute

<context:component-scan base-package=""/>
這個(gè)標(biāo)簽用于告訴Spring搜索我們指定的包下面以及一些需要被自動(dòng)注入的bean。
默認(rèn)支持的annotation:@Component @Repository  @Service @Controller
需要注意的是:這個(gè)標(biāo)簽頁(yè)實(shí)現(xiàn)了和annotation-config同樣的效果。

<mvc:annotation-driven />
剛開始的時(shí)候我也很困惑為什么需要配置這個(gè)標(biāo)簽,但是當(dāng)我們?cè)谂渲肧pringMVC的控制器的時(shí)候,我們發(fā)現(xiàn)有RequestMapping的存在,這個(gè)標(biāo)簽的作用之一就是告訴Spring去檢測(cè)RequestMapping。其他的作用如下:
- 激活@ExceptionHandler這個(gè)annotation
- 配置了這個(gè)標(biāo)簽還可以將RequestMappingHandlerAdapter注冊(cè)到Spring中
- 是SpringMVC提供默認(rèn)的類型轉(zhuǎn)化,因?yàn)槲覀儧]有在<mvc:annotation-driven/> 的屬性中配置ConversionService
- 當(dāng)然,這個(gè)標(biāo)簽還起到了一些其他的作用,我不怎么會(huì)翻譯,怕變味。下面是英文原文:

It also enables the following:
1. Spring 3 style type conversion through a ConversionService instance in addition to the JavaBean PropertyEditors used for Data Binding.
2. Support for formatting Number fields using the @NumberFormat annotation through the ConversionService
3. Support for formatting Data,Calendar,Long and Joda Time fields using the @DateTimeFormat annotation, if Joda Time 1.3 or higher is present on the classpath.
4. Support for validating @Controller inputs with @Valid if a JSR-303 Provider is present on the classpath.
5. HttpMessageConverter support for @RequestBody method parameters and @ResponseBody method return values form @RequestMapping or @ExceptionHandler methods.


2.  下面是講解web.xml配置是ContextLoaderListener和DispatcherServlet的區(qū)別:
- ContextLoaderListener是在我們的web容器啟動(dòng)的時(shí)候啟動(dòng)的,默認(rèn)會(huì)加載/WEB-INF/下面的applicationContext.xml文件。并創(chuàng)建一個(gè)WebApplicationContext容器。
- DispatcherServlet是在我們第一次訪問我們的應(yīng)用的時(shí)候創(chuàng)建的。這時(shí)候它默認(rèn)會(huì)將配置在/WEB-INF下面的<servlet-name>-servlet.xml配置文件,然后也創(chuàng)建一個(gè)WebApplicationContext。這個(gè)WebApplicationContext將之前ContextLoaderListener創(chuàng)建的容器作為父容器,因此在父容器中配置的所有Bean都能夠被注入到子容器中。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多