2.1 @RequestMapping
-
@RequestMapping是SpringMVC的核心注解,负责访问的url与调用方法之间的映射;
-
@RequestMapping可以放在类和方法上;
- @RequestMapping的属性produces属性控制response返回的形式;
- @RequestMapping的属性method属性控制接受访问的类型,不写不做限制,本例为演示方便全部都是get请求;
-
@ResponseBody(放在方法上或者返回值类型前)将方法参数放置在web body的body中(返回的不是页面而是你所控制的字符)
-
@RequestBody(放在方法参数前)将方法参数放置在web request的body中(如提交一个json对象作为参数-在
03点睛Spring MVC 4.1-REST
演示)
-
produces
的内容是指定返回的媒体类型让浏览器识别
- 如返回text/plain的话,chrome浏览器下network显示Response的
Content-Type:text/plain
;
- 如返回application/json的话,chrome浏览器下network显示Response的
application/json
;
- 因本节无页面,在
03点睛Spring MVC 4.1-REST
有只管的阐述和演示;
- 这节使用@RequestMapping演示常用映射场景
2.2 演示
package com.wisely.web;
public class DemoObj {
private Long id;
private String name;
public DemoObj() {
super();
}
public DemoObj(Long id, String name) {
super();
this.id = id;
this.name = name;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
package com.wisely.web;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller //声明为控制器bean
@RequestMapping("/test")// 根地址为http://localhost:8080/testSpringMVC/test
public class TestController {
//response媒体类型(MediaType)为text/plain,编码是utf-8
@RequestMapping(produces = "text/plain;charset=UTF-8")
//映射地址为http://localhost:8080/testSpringMVC/test
@ResponseBody //此注解让返回值不是页面,也是将结果字符串直接返回
public String root(HttpServletRequest request){
return "url:"+request.getRequestURL()+" 可以访问此方法";
}
@RequestMapping(value = "/add",produces = "text/plain;charset=UTF-8")
//映射地址为http://localhost:8080/testSpringMVC/test/add
@ResponseBody
public String add(HttpServletRequest request){
return "url:"+request.getRequestURL()+" 可以访问此方法";
}
@RequestMapping(value = {"/remove","/delete"},produces = "text/plain;charset=UTF-8")
//映射地址为http://.../test/remove(或http://.../test/delete)
@ResponseBody
public String remove(HttpServletRequest request){
return "url:"+request.getRequestURL()+" 可以访问此方法";
}
//获取request参数
//获取路径参数
@RequestMapping(value = "/get",produces = "text/plain;charset=UTF-8")
//映射路径http://.../test/get?id=123
@ResponseBody
public String passRequestParam(@RequestParam Long id,HttpServletRequest request){
System.out.println("id为"+id);
return "url:"+request.getRequestURL()+" 可以访问此方法";
}
//获取路径参数
@RequestMapping(value = "/{id}",produces = "text/plain;charset=UTF-8")
//映射路径http://.../test/123
@ResponseBody
public String passPathVariable(@PathVariable Long id,HttpServletRequest request){
System.out.println("id为"+id);
return "url:"+request.getRequestURL()+" 可以访问此方法";
}
//获得对象
@RequestMapping(value = "/pass",produces = "text/plain;charset=UTF-8")
//映射路径http://.../test/pass?id=123&name=wyf
@ResponseBody
public String passObj(DemoObj obj,HttpServletRequest request){
System.out.println("对象的id和名称分别为为:"+obj.getId()+"/"+obj.getName());
return "url:"+request.getRequestURL()+" 可以访问此方法";
}
}
分享到:
相关推荐
本篇文章将深入探讨`@RequestMapping`的使用、功能以及相关知识点。 ### 1. `@RequestMapping`介绍 `@RequestMapping`是Spring MVC提供的一个类型级别的注解,可以应用在类或方法上,用于定义HTTP请求的映射规则。...
《Spring MVC之@RequestMapping详解》 在Java Web开发中,Spring MVC框架因其强大的功能和灵活性而备受青睐。在处理HTTP请求时,@RequestMapping注解扮演着至关重要的角色,它负责将客户端的请求映射到控制器中的...
- 在Spring MVC 3.0以后,可以使用注解如`@RequestMapping`、`@Controller`、`@Service`、`@Autowired`等,替代XML配置,简化开发。 6. **Spring MVC的其他特性**: - 参数绑定:自动将请求参数绑定到Controller...
在Spring MVC框架中,`@RequestMapping`、`@RequestParam`和`@PathVariable`是三个非常重要的注解,它们用于处理HTTP请求并绑定请求参数到控制器方法的参数上。接下来,我们将详细探讨这三个注解的工作原理以及如何...
Spring MVC 4.1支持基于注解的路径映射,如`@RequestMapping`、`@GetMapping`、`@PostMapping`等。这些注解允许开发者直接在控制器方法上声明HTTP请求类型和URL模板,简化了配置。 6. **异常处理**: 通过`@...
在Spring MVC框架中,`@RequestMapping`注解是核心组件之一,它用于处理HTTP请求映射,使得控制器类或方法能够与特定的URL路径关联。本文将深入解析`@RequestMapping`的工作原理,并介绍一个简化版的自定义实现,...
Spring Web模块和Spring Web MVC模块是Spring框架中的两个关键组成部分,它们在构建Web应用程序时起着至关重要的作用。 Spring Web模块(spring-web-5.2.3.RELEASE.jar)主要负责提供Web相关的功能支持,包括HTTP...
在Spring MVC中,我们可以使用注解如@Controller和@RequestMapping来标记和映射控制器方法。 模型-视图-控制器模式(MVC)是Spring MVC的基础,模型代表业务数据,视图负责展示,而控制器是模型和视图之间的桥梁。...
在SpringMybatis项目中,利用`@RequestMapping`和`RequestAttribute`实现登录注册功能是Web开发中的常见实践。`@RequestMapping`是Spring MVC框架中用于处理HTTP请求映射的注解,而`RequestAttribute`则用于在请求...
6. **@Controller、@RequestMapping**:这两个注解是Spring MVC中非常重要的,`@Controller`标记一个类为控制器,而`@RequestMapping`则用来指定处理请求的URL路径。 7. **HandlerMapping**和**HandlerAdapter**:...
《Spring MVC 展示应用深度解析》 Spring MVC 是 Spring 框架的重要组成部分,它为构建基于模型-视图-控制器(MVC)模式的Web应用程序提供了强大的支持。"spring-mvc-showcase"项目是Spring官网提供的一个实战示例...
总结起来,`@RequestMapping`是Spring MVC中实现请求映射的关键工具,它允许开发者灵活地根据URL、请求方法、参数和头信息来映射处理逻辑。而`HiddenHttpMethodFilter`则解决了在非RESTful环境中模拟其他HTTP方法的...
此外,Spring MVC支持注解驱动开发,如@Controller、@RequestMapping、@RequestParam、@PathVariable等,使得代码更简洁,降低了XML配置的复杂度。同时,Spring MVC还提供了模型绑定、数据验证、异常处理等机制,...
【Spring MVC 框架详解】 Spring MVC 是 Spring 框架的一部分,它是一个轻量级的、基于模型-视图-控制器(MVC)设计模式的 Web 应用开发框架。Spring MVC 提供了丰富的功能,使得开发者可以快速、高效地构建高质量...
此外,Spring MVC还支持注解驱动开发,比如@Controller、@RequestMapping、@Service、@Repository等,这些注解可以简化代码,提高开发效率。 在实际的开发过程中,你可能会遇到如国际化、数据验证、异常处理、视图...
Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建MVC(Model-View-Controller)架构...在面试中,展示你对这些知识点的理解和实践经验,能够有效地证明你具备Spring MVC的高级技能,有助于获得心仪的工作机会。
Spring MVC 是一个强大的Java Web开发框架,用于构建可维护、高性能和灵活的Web应用程序。它作为Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构,简化了处理HTTP请求和响应的过程。本教程是针对初学者...