springMVC基本配置

1.freemarker

spring的版本为4.3.2,freemarker版本为2.3.23(刚开始我用的freemarker版本为2.3.20,但一直报错,看报错的结果貌似和版本有关)

2.web.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>MyWork</display-name>
  <!-- 编码过滤器 -->
    <filter>
        <filter-name>charsetEncoding</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>charsetEncoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <!-- 前端控制器 -->
    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param> 
	<--如果不配置则会默认加载WEB-INF/下的--> 
        <param-name>contextConfigLocation</param-name>  
        <param-value>classpath:config/DispatcherServletConfig.xml</param-value>  
    	</init-param>  
    	<load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>
2.DispatcherServletConfig.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xmlns:mvc="http://www.springframework.org/schema/mvc" 
    xmlns:task="http://www.springframework.org/schema/task"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans-4.2.xsd 
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context-4.2.xsd 
        http://www.springframework.org/schema/mvc 
        http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd 
        http://www.springframework.org/schema/task 
        http://www.springframework.org/schema/task/spring-task-4.2.xsd">

    <!-- 扫描路径 -->
    <context:component-scan base-package="com.ydd.mywork.controller" >
        <context:include-filter type="annotation"  expression="org.springframework.stereotype.Controller"/>
    </context:component-scan>

    <!-- 配置根视图 -->
    <!-- -->
    <mvc:view-controller path="/index"  view-name="index"/>
	
    <!-- 激活基于注解的配置 @RequestMapping, @ExceptionHandler,数据绑定 ,@NumberFormat ,
    @DateTimeFormat ,@Controller ,@Valid ,@RequestBody ,@ResponseBody等  -->
    <mvc:annotation-driven />

    <!-- 静态资源配置 -->
    <mvc:resources mapping="/js/**" location="/js/"></mvc:resources>

    <!-- 视图层配置 -->
    <!-- Freemarker配置 -->  
	<bean id="freemarkerConfigurer"  
        class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  
        <property name="templateLoaderPath" value="/" />  
        <property name="defaultEncoding"  value="UTF-8" />  
        <!--这个setting一般写在一个property文件中 然后通过bean来引用-->
	<property name="freemarkerSettings">  
            <props>  
                <prop key="template_update_delay">10</prop>  
                <prop key="locale">zh_CN</prop>  
                <prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>  
                <prop key="date_format">yyyy-MM-dd</prop>  
                <prop key="number_format">#.##</prop>  
            </props>  
        </property> 
        
        
    </bean>  

<!--视图解释器 -->  
<bean id="viewResolver"  
        class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  
        <property name="viewClass"  value="org.springframework.web.servlet.view.freemarker.FreeMarkerView" />  
        <property name="prefix" value="/" />  
        <property name="suffix" value=".html" />
        <property name="contentType" value="text/html;charset=utf-8" />  
        <property name="exposeRequestAttributes" value="true" />  
        <property name="exposeSessionAttributes" value="true" />  
        <property name="exposeSpringMacroHelpers" value="true" />  
    </bean>  
    <!-- 拦截器 -->
	<!-- <mvc:interceptors>  
	    使用bean定义一个Interceptor,直接定义在mvc:interceptors根下面的Interceptor将拦截所有的请求  
	    
	    <mvc:interceptor>  
	        <mvc:mapping path="/*"/>  
	        定义在mvc:interceptor下面的表示是对特定的请求才进行拦截的  
	        <bean class="com.ydd.mywork.interceptor.indexInterceptor"/>  
	    </mvc:interceptor>  
	</mvc:interceptors>   -->
</beans>

3.tomcat的server.xml配置

在最下面的host标签中加入这个

<Context docBase="你的项目所在的目录" path="" reloadable="true" source="org.eclipse.jst.jee.server:MyWork"/></Host>

4.显示结果


地址栏是这样的:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值