spring3.0.5的mvc使用(exception,json,annotation,xml,upload/download)

来源:互联网 发布:淘宝上货软件多少钱 编辑:程序博客网 时间:2024/06/08 04:40
MVCSpringlog4jServletXML 
    由于公司的项目要使用spring的mvc,所以特意写了这个教程,与大家分享。在这里我只给出思路和源代码,不做过多的代码粘贴,请大家自行消化理解。
    demo代码中,包含了exception,json,annotation,xml等诸多mvc的用法,为了更好的体验,请下载最高版本的demo代码。

一 环境
1)tomcat6.0.32
2)jdk1.6.0.24
3)eclipse3.6.2_javaee

二 包说明,共10个包
1)log4j
log4j-1.2.16.jar

2)spring的logging辅助
commons-logging-1.1.1.jar

3)jstl标签包
jstl-1.2.jar

4)spring核心包
org.springframework.asm-3.0.5.RELEASE.jar
org.springframework.beans-3.0.5.RELEASE.jar
org.springframework.context-3.0.5.RELEASE.jar
org.springframework.core-3.0.5.RELEASE.jar
org.springframework.expression-3.0.5.RELEASE.jar
org.springframework.web-3.0.5.RELEASE.jar

5)spring mvc包
org.springframework.web.servlet-3.0.5.RELEASE.jar

三 配置步骤
1.配置log4j,将log4j.properties(必须)放到src下面;commons-logging.properties(选配,不是必须的)放到src下面

2.配置WEB-INF/web.xml
1)log4j配置,在最前(必须)
2)spring配置,此处指定的文件名,一定要和下面的spring mvc中的 servlet-name中一致,格式为"名字-servlet.xml",使用contextConfigLocation参数为上下文载入器指定一个或多个Spring配置文件
3)spring 上下文载入器
4)Spring MVC的核心Servlet配置

3.配置WEB-INF/spring-servlet.xml
1)地址映射(xml形式必须要在此文件中;annotation的不需要,但需要配置context:component-scan/>)
2)viewResolver的配置

四 开发
1)model,普通的POJO类
2)view,JSP页面,或者HTML,PHP等
3)controller,xml形式的继承 org.springframework.web.servlet.mvc.AbstractController;annotation的不用继承

五 流程
1)请求过来,DispatcherServlet(单例)根据URL查找HandlerMapping,找出对应的Controller;
2)Controller会返回ModelAndView(模型数据和视图)给DispatcherServlet;
3)DispatcherServlet将ModelAndView相关内容通过view展示出来.


六 总结
xml形式的用的比较少,现在大多数系统中一般都使用annotation形式的配置。他们的配置区别在于
1)RequestMapping的配置是在spring-servlet.xml中,还是在controller里面;
2)controller里面用ModelAndView,还是其他Model,或者url String

七 补充
2011-02-09
1)优化结构,使mvc的配置文件与bean的配置文件分开来(applicationContext.xml,spring-servlet.xml);
2)修改log的使用方式,通过commons-logging与log4j关联使用;
3)增加aonntation的使用方式;
4)上传最新修改过的源代码,包括annotation和xml形式;

2011-02-26
1)上传最新的DEMO,里面增加了动态地址引用及与json集成使用的方式;

2011-03-15
1)spring mvc的深入应用,包括excpetion,json,mvc映射的细分;
2)1.2版本的demo上传;

2011-03-17
1)1.3版本的demo上传;
2)更新exception的相关代码,进一步说明excpetion的处理机制;

2011-04-04
1)增加spring mvc中上传/下载的demo;




作者简介
昵称:澳洲鸟
姓名:朴海林
QQ:85977328
MSN:6301655@163.com

转载请注明出处
  • 大小: 14.5 KB
  • spring3.0.5_mvc_annotation.zip (3.1 MB)
  • 描述: 1.0-废弃版本
  • 下载次数: 651
  • spring3.0.5_mvc_xml.zip (3.1 MB)
  • 描述: 1.2
  • 下载次数: 1025
  • spring3.0.5_mvc_annotation.zip (3.8 MB)
  • 描述: 1.1-废弃版本
  • 下载次数: 337
  • spring3.0.5_mvc_annotation.zip (3.1 MB)
  • 描述: 1.2
  • 下载次数: 993
  • spring3.0.5_mvc_annotation_exception.zip (3.1 MB)
  • 描述: 1.2-废弃版本
  • 下载次数: 418
  • spring3.0.5_mvc_annotation_json.zip (4.3 MB)
  • 描述: 1.2
  • 下载次数: 3118
  • spring3.0.5_mvc_annotation_exception.zip (3.1 MB)
  • 描述: 1.3
  • 下载次数: 1393
  • spring3.0.5_mvc_fileupload.zip (3.2 MB)
  • 描述: 1.0
  • 下载次数: 870
  • 查看图片附件
分享到:
CPU的核心与线程数 |MyEclipse6.5的注册机代码
  • 2011-01-31 10:36
  • 浏览 3150
  • 评论(10)
  • 论坛回复 / 浏览 (11 / 8256)
  • 分类:企业架构
  • 相关推荐
评论
10 楼 followwithme 2011-11-13  
谢谢分享,正好用得上。。
9 楼 suyulin6688 2011-05-30  
85977328 写道
liu2511981 写道
请问,楼主,试没试 PUT????!


我试PUT 有问题。。

我一般不用put,直接submit过来,然后用request来取得输入
不过我会尝试一下,等试验时候告诉你结果


put和delete都没问题。

需要在 web.xml 里面配置一个 filter:

 
Java代码 复制代码 收藏代码
  1. <!-- 支持put,delete等method -->     
  2.   <filter>     
  3.     <filter-name>hiddenHttpMethodFilter</filter-name>     
  4.     <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>     
  5.   </filter>   
  6.   
  7.   <filter-mapping>     
  8.     <filter-name>hiddenHttpMethodFilter</filter-name>     
  9.     <servlet-name>springmvc</servlet-name>     
  10.   </filter-mapping>  


jsp 页面里面,加一个 name="_method", value="put" 的 hidden 域:

Java代码 复制代码 收藏代码
  1. <form:form commandName="customer" action="${ctx}/customer/${customer.id}">   
  2.   <input type="hidden" name="_method" value="put"/>   
  3.   loginName: <form:input path="loginName" /><form:errors path="loginName" cssClass="errorBox"/>   
  4.   realName:  <form:input path="realName" /><form:errors path="realName" cssClass="errorBox"/>   
  5. </form:form>  

8 楼 ericslegend 2011-05-30  
哥们儿,你百度的?
7 楼 yuancheng320113 2011-03-16  
学习中,谢谢分享!!
6 楼 hongshenghome 2011-03-15  
学习中,谢谢分享!!
5 楼 85977328 2011-03-12  
liu2511981 写道
请问,楼主,试没试 PUT????!


我试PUT 有问题。。

我一般不用put,直接submit过来,然后用request来取得输入
不过我会尝试一下,等试验时候告诉你结果
4 楼 liu2511981 2011-03-10  
请问,楼主,试没试 PUT????!


我试PUT 有问题。。
3 楼 tomliguocai 2011-02-10  
annotation 好用是好用,个人感觉还是用XML配制灵活些,容易找相应关系
2 楼 85977328 2011-02-09  
caoyangx 写道
还继承org.springframework.web.servlet.mvc.AbstractController呢?
那你们公司用spring2就可以了。

公司用的是 annotation
我接下来就会把 annotation的方式 给完善
1 楼 caoyangx 2011-02-05  
还继承org.springframework.web.servlet.mvc.AbstractController呢?
那你们公司用spring2就可以了。
原创粉丝点击