SpringMVC使用中遇到的问题总结
使用的IDE工具是MyEclipse2014, spring版本为3.1.1
在使用Spring MVC时需要修改web.xml配置文件,web.xml默认放在WEB-INF目录下。
1.web.xml约束文档
用MyEclipse生成的约束文档有时不对,可以使用下面的模版
<?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_3_0.xsd"
id="WebApp_ID" version="3.0"> </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中的内容。配置方式如下
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/transport-servlet.xml</param-value>
</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. 建立工程
SpringMVC使用中遇到的问题总结的更多相关文章
- 接口文档神器Swagger(下篇)
本文来自网易云社区 作者:李哲 二.Swagger-springmvc原理解析 上面介绍了如何将springmvc和springboot与swagger结合,通过简单配置生成接口文档,以及介绍了swa ...
- SpringMVC中遇到的Http400 Bad Request 总结
在搭建SpringMVC环境,在使用中遇到了多次Bad Request的连接,下面来总结下. 1.参数类型不对,如后台实体类的属性为int,但传来的参数为字符串 2.因为我的粗心,本来是要通过Ajax ...
- SSH框架使用中存在的诡异异常
背景 相信大多数人目前都在使用Spring + Struts2/SpringMVC + Hibernate来构建项目的整体架构,但是在使用中经藏会遇到一些诡异的问题,不知道如果解决,今天我遇到了一个非 ...
- SpringMVC中使用Json传数据
在web项目中使用Json进行数据的传输是非常常见且有用的,在这里介绍下在SpringMVC中使用Json传数据的一种方法,在我的使用中,主要包括下面四个部分(我个人喜好使用maven这类型工具进行项 ...
- Apache Shiro权限框架在SpringMVC+Hibernate中的应用
在做网站开发中,用户权限必须要考虑的,权限这个东西很重要,它规定了用户在使用中能进行哪 些操作,和不能进行哪些操作:我们完全可以使用过滤器来进行权限的操作,但是有了权限框架之后,使用起来会非常的方便, ...
- SpringMVC简单入门
SpringMVC简单入门 与大家分享一下最近对SpringMVC的学习,希望本文章能对大家有所帮助. 首先什么是SpringMVC? Spring 为展现层提供的基于MVC设计理念的优秀的Web框架 ...
- springMVC web项目 对访问数据库的用户名密码进行加密解密
在使用springMVC开发web项目中,数据库的用户名,密码一般都是配置在.properties文件中 然后在通过.xml配置文件引入.properties的变量,例如 在config.proper ...
- SpringMVC源码分析和一些常用最佳实践
前言 本文分两部分,第一部分剖析SpringMVC的源代码,看看一个请求响应是如何处理,第二部分主要介绍一些使用中的最佳实践,这些best practices有些比较common,有些比较tricky ...
- SpringMvc redirect
SpringMVC redirect 核心 首先网上百度到的资源基本已经够用, 留作记录. SpringMVC-redirect重定向跳转传值 虽然这哥们也是转的, 但又没有留源地址. 因此 ... ...
随机推荐
- mod_rewrite
一.简介 http://www.07fly.net/a/wangluobiancheng/Phpbiancheng/201501/58393.html 二.实现原理: 只有当用户的WE ...
- mysql force index() 强制索引的使用
mysql force index() 强制索引的使用 之前跑了一个SQL,由于其中一个表的数据量比较大,而在条件中有破坏索引或使用了很多其他索引,就会使得sql跑的非常慢... 那我们怎么解决呢? ...
- Webpack+React+ES6入门指南[转]
React无疑是今年最火的前端框架,github上的star直逼30,000,基于React的React Native的star也直逼20,000.有了React,组件化似乎不再步履蹒跚,有了Reac ...
- 《TCP/IP详解 卷一》读书笔记-----TCP数据流
1.Delayed Acknowledgements:TCP通常不会在收到数据之后立即返回一个ACK,而是会有一个延时,希望能ACK报文段中带上一些数据,通常这个延时为200ms 2.Nagle Al ...
- 合工大OJ 1331 回文数
Description 一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数. 任取一个正整数,如果不是回文数,将该数与他的倒序数相加,若其和不是回文数, ...
- 2014 Super Training #8 C An Easy Game --DP
原题:ZOJ 3791 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3791 题意:给定两个0-1序列s1, s2,操作t ...
- UESTC 1080 空心矩阵
这题理解题意最重要,千万不要理解错.题意是取矩阵的左上角,所以能切掉的都要切掉,是能形成三角形的形成三角形,不能的尽量割掉最大.代码借鉴了一位大牛的,如下: #include<iostream& ...
- SSH框架总结(框架分析+环境搭建+实例源码下载) 《转》
这篇文章比较易懂,易理解: 首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层W ...
- 链表面试题Java实现【重要】
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- iOS打包导出时出现Missing iOS Distribution signing
iOS打包导出时出现Missing iOS Distribution signing 上传APP就出现Missing iOS Distribution signing indetity for 打包i ...