springmvc文件的说明

springmvc文件的说明

1.springmvc文件的配置顺序

主要的配置内容,需要扫描的包,注册常用的注解,配置定时任务,配置静态内容,开启面向切面编程,配置数据的传输格式,配置视图解析器,

2.配置内容:

    <!--需要扫描的包并注册被@Component,@Controller,@Service,@Repository等注解标记的组件。-->
    <context:component-scan base-package="com.*" />
    <!--
    对上面需要扫描的包
    隐式地向 Spring容器注册AutowiredAnnotationBeanPostProcessor
CommonAnnotationBeanPostProcessor
PersistenceAnnotationBeanPostProcessor
RequiredAnnotationBeanPostProcessor
    使项目可以直接使用1.@Autowired
    2.@ Resource 、@ PostConstruct、@ PreDestroy
    3.@PersistenceContext
    4.@Required-->
    <context:annotation-config />
    <!--配置定时任务 后面详细说明-->
    <task:annotation-driven/>
<!-- 
servlet在找页面时,走的是dispatcherServlet路线。找不到的时候会报404
加上这个默认的servlet时候,servlet在找不到的时候会去找静态的内容。-->
    <mvc:default-servlet-handler />
    <!-- 过滤掉静态资源的拦截,设置缓存为一年最大限度利用缓存
    <mvc:resources location="/content/" cache-period="31556926" mapping="/content/**"></mvc:resources>-->
    <!--开启面向切面编程-->
    <aop:aspectj-autoproxy proxy-target-class="true" />
    <!--
    会自动注册RequestMappingHandlerMapping与RequestMappingHandlerAdapter
    两个bean,是spring MVC为@Controllers分发请求所必须的。
    并且提供了数据绑定支持,@NumberFormatannotation支持,@DateTimeFormat支持,
    @Valid支持读写XML的支持(JAXB)和读写JSON的支持(默认Jackson)等功能。-->
    <mvc:annotation-driven>
        <mvc:message-converters>
            <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <value>text/html;charset=UTF-8</value>
                        <value>application/json</value>
                    </list>
                </property>
                <property name="features">
                    <list>
                        <value>WriteMapNullValue</value>
                        <value>QuoteFieldNames</value>
                        <value>WriteDateUseDateFormat</value>
                        <!-- 禁用fastjson循环引用检测 -->
                        <value>DisableCircularReferenceDetect</value>
                    </list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>
    <!-- FreeMarker视图解析器     默认视图 -->
    <bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>
        <property name="contentType" value="text/html; charset=utf-8"/>
        <property name="requestContextAttribute" value="request"/>
        <property name="cache" value="false"/>
        <property name="viewNames" value="*.html" />
        <property name="suffix" value=""/>
        <!--设置视图解析器的优先级-->
        <property name="order" value="0"/>
    </bean>
    <bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
        <property name="templateLoaderPath" value="/WEB-INF/views/"/>
        <property name="freemarkerVariables">
            <map>
                <entry key="shiro" value-ref="shiroTag" />
            </map>
        </property>
    </bean>
    <!-- JSP视图解析器  -->
    <bean id="viewResolverJsp" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/views/"/>
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
        <property name="viewNames" value="*.jsp" />
        <property name="suffix" value=""/>
        <property name="order" value="1"/>
    </bean>
    <!--处理文件上传-->
    <bean id="multipartResolver"   class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="maxUploadSize" value="1000000000" />
    </bean>

猜你喜欢

转载自blog.csdn.net/c_royi/article/details/80491414