`
json20080301
  • 浏览: 165401 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

SPRING MVC3.2案例讲解--SPRING MVC3的各种URL映射(2)

 
阅读更多

继续上一章节,亲们没事留个言,对我是个鼓励,俺就把更有动力这个学习笔记继续下去!!!酷

 

JAVA代码如下:

@Controller
public class MappingController {
//对应的URL 只能是 /mapping/path
	@RequestMapping("/mapping/path")
	public @ResponseBody String byPath() {
		return "Mapped by path!";
	}
// 对应的URL 可以是/mapping/path/abc,也可以是/mapping/path/def ;
//  /mapping/path/* :*对应任意字符串
	@RequestMapping(value="/mapping/path/*", method=RequestMethod.GET)
	public @ResponseBody String byPathPattern(HttpServletRequest request) {
		return "Mapped by path pattern ('" + request.getRequestURI() + "')";
	}

//对应的URL是/mapping/method,但必须是GET方式提交请求
	@RequestMapping(value="/mapping/method", method=RequestMethod.GET)
	public @ResponseBody String byMethod() {
		return "Mapped by path + method";
	}

//对应URL是/mapping/parameter?foo=bar ,即URL链接后必须带有foo参数
	@RequestMapping(value="/mapping/parameter", method=RequestMethod.GET, params="foo")
	public @ResponseBody String byParameter() {
		return "Mapped by path + method + presence of query parameter!";
	}

//对应URL是/mapping/parameter ,即URL链接后必须不带有foo参数,但可以是其他参数
	@RequestMapping(value="/mapping/parameter", method=RequestMethod.GET, params="!foo")
	public @ResponseBody String byParameterNegation() {
		return "Mapped by path + method + not presence of query parameter!";
	}
//  /mapping/header必须是GET提交,并且必须带有requestHeader(FooHeader=foo);见 js代码片段1
	@RequestMapping(value="/mapping/header", method=RequestMethod.GET, headers="FooHeader=foo")
	public @ResponseBody String byHeader() {
		return "Mapped by path + method + presence of header!";
	}

// 这个就是和上面相反的,
	@RequestMapping(value="/mapping/header", method=RequestMethod.GET, headers="!FooHeader")
	public @ResponseBody String byHeaderNegation() {
		return "Mapped by path + method + absence of header!";
	}

//  /mapping/consumes 必须是POST 提交 ;contentType必须是: "application/json" ;consumes(消费者)表示用户需要提交的数据类型为JSON
//见JS代码片段1
	@RequestMapping(value="/mapping/consumes", method=RequestMethod.POST, consumes=MediaType.APPLICATION_JSON_VALUE)
	public @ResponseBody String byConsumes(@RequestBody JavaBean javaBean) {
		return "Mapped by path + method + consumable media type (javaBean '" + javaBean + "')";
	}

// /mapping/produces 必须是GET提交,produces(生产者),表示返回给用户的数据类型,本例是JAVABEAN转化成JSON数据
	@RequestMapping(value="/mapping/produces", method=RequestMethod.GET, produces=MediaType.APPLICATION_JSON_VALUE)
	public @ResponseBody JavaBean byProducesJson() {
		return new JavaBean();
	}

// 类似于上面的
	@RequestMapping(value="/mapping/produces", method=RequestMethod.GET, produces=MediaType.APPLICATION_XML_VALUE)
	public @ResponseBody JavaBean byProducesXml() {
		return new JavaBean();
	}

}

 

  js代码片段1

	 $("#byHeader").click(function(){	var link = $(this);
$.ajax({ url: this.href, dataType: "text", beforeSend: function(req) { req.setRequestHeader("FooHeader", "foo"); }, success: function(form) { MvcUtil.showSuccessResponse(form, link); }, error: function(xhr) { MvcUtil.showErrorResponse(xhr.responseText, link); }});
		return false;
	});

$.ajax({ type: "POST", url: form.attr("action"), data: data, contentType: "application/json", dataType: "text", success: function(text) { MvcUtil.showSuccessResponse(text, button); }, error: function(xhr) { MvcUtil.showErrorResponse(xhr.responseText, button); }});
		return false;
  • 大小: 44.5 KB
分享到:
评论

相关推荐

    Spring MVC step-by-step 源码

    2. **Spring MVC的核心组件**: - **DispatcherServlet**:前端控制器,负责接收HTTP请求,根据请求信息选择合适的处理器(Handler)。 - **HandlerMapping**:映射处理器,查找并选择处理请求的控制器方法。 - *...

    springmvc4.1+spring4.1+mybatis3.2+spring-security3.2的maven环境搭建

    在本项目中,我们主要关注的是一个基于Spring MVC 4.1、Spring 4.1、MyBatis 3.2以及Spring Security 3.2的Maven环境的搭建过程。下面将详细介绍这些技术栈的核心概念、它们如何协同工作以及如何在实际开发环境中...

    Mybatis 3.2.2 + Spring MVC 3.2

    3. **处理器映射器和适配器**:Spring MVC自动映射URL到处理器方法,并通过适配器模式处理请求和响应。 4. **视图解析**:通过视图解析器,Spring MVC可以自动根据逻辑视图名生成实际的视图,如JSP页面。 **整合...

    translation-spring-mvc-4-documentation, Spring MVC 4.2.4 RELEASE 中文文档完整翻译稿.zip

    除此之外,Spring MVC还支持RESTful风格的URL设计、文件上传下载、异常处理、视图解析以及模板引擎集成(如JSP、Thymeleaf等)。这个翻译文档详细阐述了这些特性,并提供了丰富的示例代码,对于学习和掌握Spring MVC...

    spring-mvc-test-sample-master.zip_spring mvc_springmvc-test

    7. **HandlerMapping**和**HandlerAdapter**:这两者是Spring MVC的内部组件,HandlerMapping负责将URL映射到合适的处理器,HandlerAdapter则负责调用控制器的方法。 8. **ViewResolver**:视图解析器的作用是根据...

    spring mvc 3.2 rest配置 文件

    本篇文章将深入探讨Spring MVC 3.2中配置REST服务的关键点。 首先,`dispatcher-servlet.xml`是Spring MVC的核心配置文件,它定义了Spring MVC如何处理HTTP请求。在配置REST服务时,我们需要在这个文件中声明一些...

    spring mvc 3.2 参考文档

    Spring MVC 是一个强大的Java web开发框架,主要用于构建模型-视图-控制器(MVC)架构的应用程序。在Spring 3.2版本中,它提供了一系列高级特性和功能,旨在简化开发流程并提高代码的可维护性和灵活性。 核心组件是...

    spring-webmvc-5.0.9 jar包、源码和javadoc

    Spring 5.0.9中,注解驱动开发已经非常成熟,@RequestMapping、@GetMapping、@PostMapping等注解用于映射URL请求,@RequestParam、@PathVariable用于获取请求参数,@ModelAttribute用于绑定模型数据,极大地简化了...

    spring-web-5.2.3.RELEASE和spring-webmvc-5.2.3.RELEASE

    Spring Web模块和Spring Web MVC模块是Spring框架中的两个关键组成部分,它们在构建Web应用程序时起着至关重要的作用。 Spring Web模块(spring-web-5.2.3.RELEASE.jar)主要负责提供Web相关的功能支持,包括HTTP...

    外文翻译Spring的MVC构架模式-CSDN下载

    3. **映射器(HandlerMapping)**: `DispatcherServlet`会询问`HandlerMapping`来找到与请求URL匹配的处理器(控制器方法)。 4. **适配器(HandlerAdapter)**: 找到处理器后,`DispatcherServlet`使用`...

    Spring Cloud+Spring MVC+Mybatis项目源码.rar_mvc_spring mvc项目_spring-

    Spring MVC是Spring框架的一部分,用于构建Web应用程序,而Spring Cloud则是Spring生态中的微服务解决方案,Mybatis则是一个轻量级的持久层框架,专注于SQL映射。 首先,Spring MVC作为模型-视图-控制器(MVC)架构...

    Pro Spring MVC---Apress-2012

    ### Pro Spring MVC -- Apress-2012 #### 关键知识点概览: - **Spring MVC 组件构建块** - **开发环境配置** - **为基于 Spring 的应用提供 Web 前端** - **测试 Web 前端的实用方法** - **部署至本地 Web 服务器...

    spring MVC step-by-step

    2. HandlerAdapter:为各种不同类型的处理器提供统一的调用方式。 3. ViewResolver:根据模型数据选择并渲染视图。 4. ModelAndView:在控制器中,你可以返回一个ModelAndView对象,其中包含模型数据和视图名称。 ...

    springmvc3.2

    9. **模板引擎集成**:Spring MVC 3.2与各种模板引擎(如Thymeleaf、FreeMarker、Velocity等)有良好的集成,方便创建动态视图。 10. **性能优化**:该版本对DispatcherServlet进行了优化,减少了内存消耗,提高了...

    Spring-MVC-step-by-step.zip_Java MVC spring_Java spring mvc_sp

    《Spring MVC 入门教程:步步为营》 在Java Web开发领域,Spring MVC作为Spring框架的一部分,扮演着核心的角色。本教程旨在帮助初学者逐步理解并掌握Spring MVC的使用,构建自己的Web应用程序。 一、Spring MVC...

    【免费】Springmvc3.2所需要的全部jar包

    5. **ORM集成**:Spring MVC 3.2与Hibernate、MyBatis等ORM框架有良好的集成,简化了对象关系映射的处理,提高了开发效率。 6. **MVC注解**:Spring MVC 3.2进一步推广了注解驱动的开发,如@Controller、@...

    spring-mvc-showcase-case1-client

    4. 路由管理:AngularJS的$routeProvider或ui-router插件用于处理前端路由,与Spring MVC的URL映射相协调。 总的来说,Spring MVC、AngularJS和RequireJS的整合提供了从前端到后端的完整解决方案,通过合理的架构...

    spring mvc经典入门案例

    2. **Spring MVC 组件** - **DispatcherServlet**:作为 Spring MVC 的前端控制器,负责接收请求并分发到相应的处理器。 - **Controller**:控制器是处理请求的组件,通常使用注解如 `@Controller` 来标识。 - **...

    spring-mvc-showcase

    2. View:View负责呈现数据,Spring MVC支持多种视图技术,如JSP、FreeMarker、Thymeleaf等。视图解析器会根据ModelAndView中的视图名找到具体的视图模板。 3. ViewModel:ViewModel是Model和View的一种结合,它将...

    springmvc4.1+spring4.1+mybatis3.2+spring-security3.2 jar包

    Spring MVC、Spring、MyBatis 和 Spring Security 是四个在Java Web开发中广泛使用的框架,它们分别负责不同的职责,共同构建了一个强大的企业级应用框架体系。这个整合包包含了这些框架的4.1和3.2版本,是为了解决...

Global site tag (gtag.js) - Google Analytics