SpringMVC @RequestMapping处理多请求的自我实践

参考别的写的文章,记录一下实践成功的例子

 

例1:直接使用*.do访问

 

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/helloWorld")
public class HelloWorldController {
	
	@RequestMapping("aaaa")
	public String aaaa() {
		// return "success"; //跳转到success页面
		System.out.println("aaaa");
		return "MyJsp";
	}
	
	@RequestMapping("bbbb")
	public String bbbb() {
		// return "success"; //跳转到success页面
		System.out.println("bbbb");
		return "MyJsp";
	}
}

 访问

/helloWorld/aaaa.do

/helloWorld/bbbb.do

 

貌似直接访问

 

例2:使用*.do参数访问

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/helloWorld/default.do")
public class HelloWorldController {
	
	@RequestMapping(params=("aaaa"))
	public String aaaa() {
		// return "success"; //跳转到success页面
		System.out.println("aaaa");
		return "MyJsp";
	}
	
	@RequestMapping(params=("bbbb"))
	public String bbbb() {
		// return "success"; //跳转到success页面
		System.out.println("bbbb");
		return "MyJsp";
	}
}

 访问

/helloWorld/default.do?aaaa

/helloWorld/default.do?bbbb

 

 

例3:绑定参数

 

@RequestMapping(params=("cccc"))
public String cccc(@RequestParam("abcd") String departmentId){
	System.out.println(departmentId);
	return "MyJsp";
}

 访问

/helloWorld/default.do?cccc&abcd=123

 

另一种绑定参数方法(可绑定多个参数)

@RequestMapping(value="/dddd/{departmentId}")
public String dddd(@PathVariable String departmentId){
	System.out.println(departmentId);
	return "MyJsp";
}

 访问:

/helloWorld/dddd/123123.do

例4:使用正则表达式

@RequestMapping(value="/{textualPart:[a-z-]+}{numericPart:[\\d]+}")
public String ffff(@PathVariable String textualPart,@PathVariable String numericPart){
	System.out.println("textualPart:"+textualPart);
	System.out.println("numericPart:"+numericPart);
	return "MyJsp";
}

 访问:/helloWorld/abcabc123123.do

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`@RequestMapping`是Spring MVC框架中的一个重要注解,用于将HTTP请求映射到控制器的方法上。这个注解用于简化RESTful风格的Web服务开发,使得路由和处理逻辑更加清晰和模块化。下面是一些关于`@RequestMapping`实验小结的关键点: 1. **路径映射**:`@RequestMapping`用于指定一个或多个HTTP请求方法(GET, POST, PUT, DELETE等),以及对应的URL路径。例如,`@RequestMapping(value = "/users", method = RequestMethod.GET)`表示该方法处理所有发送到"/users"路径的GET请求。 2. **请求参数**:可以通过`@RequestParam`或`@PathVariable`注解处理请求参数,如查询参数、路径变量等。如`@RequestParam(name="id") Long userId`会从请求中获取名为"id"的查询参数。 3. **返回类型**:`@ResponseBody`可以用来标记返回值为JSON或XML响应体,而`@ModelAttribute`用于处理表单提交的模型属性。 4. **异常处理**:可以使用`@ExceptionHandler`注解来捕获特定的异常,并提供定制的错误处理。 5. **分组和扫描器**:为了方便管理,可以通过`@RequestMapping`的`@ControllerAdvice`或`@Controller`的`@RequestMapping(basePath = "/api/v1")`来对多个控制器进行分组或定义统一的路径前缀。 相关问题-- 1. `@RequestMapping`如何处理不同类型的HTTP请求? 2. 如何在Spring MVC中使用`@RequestParam`和`@PathVariable`? 3. `@ResponseBody`和`@ModelAttribute`的区别是什么? 4. 如何在Spring MVC中实现全局异常处理? 5. 分组和扫描器在Spring MVC中的应用场景是什么?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值