• SpringMVC使用中遇到的问题总结


    使用的IDE工具是MyEclipse2014, spring版本为3.1.1

    在使用Spring MVC时需要修改web.xml配置文件,web.xml默认放在WEB-INF目录下。

    1.web.xml约束文档

      用MyEclipse生成的约束文档有时不对,可以使用下面的模版

    1 <?xml version="1.0" encoding="UTF-8"?>
    2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    3         xmlns="http://java.sun.com/xml/ns/javaee" 
    4         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    5         id="WebApp_ID" version="3.0">
    6 
    7 </web-app>

    2.配置DispatcherServlet

      Spring MVC工作时其核心的部分是DispatcherServlet,这个servlet就是个门户,所有的请求和相应都需要经过它,我们需要在web.xml来指明它。

    <servlet>
          <servlet-name>spring</servlet-name>
          <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
          <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:spring-servlet.xml</param-value>
         </init-param>
         <load-on-startup>1</load-on-startup>
     </servlet>
     <servlet-mapping>
         <servlet-name>spring</servlet-name>
         <url-pattern>/</url-pattern>
     </servlet-mapping>

    配置它就像配置一个我们自己写的Servlet一样,这里不做说明。主要是这个Servlet在加载时需要读取关于Sring的配置信息文档(如:Spring-serlvet.xml)。这个文档的位置放在不对就会导致该Servlet加载失败。

    2.1 使用默认配置路径

    使用默认配置路径时,Spring-servlet.xml应该放在WEB-INF/下,这个而且这个文件的文件名不能随便命名。命名方式为

     <servlet-name>name</servlet-name>中的name连接 -servlet.xml,   如 <servlet-name>SpringTest</servlet-name>时那么配置文件名为SpringTest-servlet.xml

    2.2 指定路径名

      上面的配置文件中就是使用的是指定路径名方式。

      <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:spring-servlet.xml</param-value>
      </init-param>

      其中的classpath为/WEB-INF/classes目录,所以我们应该把配置文件放在这个目录下。也可以直接放在工程的src目录下,Myeclipse会自动将其放在classes目录中。当然我们也可以指定放在别的目录下,比如我们在WEB-INF下新建config目录,将配置文件放在其中,那我们也应该设置相应的参数。

     <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>/WEB-INF/config/spring-servlet.xml</param-value>
     </init-param>

    2.3 特殊情况

      如果我们的web.xml只是用了一个servlet的话可以用上面的方式来指定spring-servlet.xml,如果定义了多个servlet的话,该文件只能通过<context-param></context-param>来配置,因为多个servlet可以共享context中的内容。配置方式如下

    1 <context-param>
    2        <param-name>contextConfigLocation</param-name>
    3      <param-value>/WEB-INF/transport-servlet.xml</param-value>
    4   </context-param>

    3. Spring MVC框架的配置

    3.1约束文档的引入

    我们继续沿用sping-servlet.xml配置文档,下面的也一样。MyEclipse生成的配置文档引入的约束并不全,我们可以使用下面的约束。

    <?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:context="http://www.springframework.org/schema/context"
        xmlns:mvc="http://www.springframework.org/schema/mvc"
        xsi:schemaLocation="http://www.springframework.org/schema/mvc
            http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
            http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context-3.1.xsd">
    </beans>

     

     4.SpringMVC + Maven

      1.MyEclipse中配置maven

        这里不使用MyEclipse自带的maven,通过官网下载进行配置。配置教程 链接地址1 该教程只需看前面配置maven这一部分。

      2. 建立工程

        链接地址2

  • 相关阅读:
    Ansys Maxwell2——二维电磁场理论和有限元基础
    Ansys Maxwell在工程电磁场中的应用1——二维分析技术
    第四章 栈
    第三章 链表
    第二章 队列
    第三章 操作系统用户界面总结
    第一章 逻辑结构与物理结构
    Linux-Mint的一些配置经验
    docker安装zookeeper的使用说明
    SpringCloud初体验-使用Eureka进行服务注册和发现
  • 原文地址:https://www.cnblogs.com/xidongyu/p/5333883.html
Copyright © 2020-2023  润新知