zoukankan      html  css  js  c++  java
  • SpringMVC--RequestMapping

    一、RequestMapping映射URL

    1)RequestMapping注解指定控制器能处理哪些URL请求,可用于类定义和方法定义处。

    2)RequestMapping常用属性有value、params、method、headers,表示请求URL地址、请求方法、请求参数及请求头。他们之间是与的关系,复合多个条件可让请求映射精确化。

    类定义

    @RequestMapping(value = "/user")
    public class UserController{
    }

    方法定义 映射请求地址:http://127.0.0.1:8080/应用名/user/register

    @RequestMapping(value = "/register", method = RequestMethod.GET)
    public String register{
    }
    

    应用占位符

    @RequestMapping(value = "/{formName}")
    public String loginForm(@PathVariable String formName) {
    		// 动态跳转页面
    		return formName;
    }
    

    3)如果类定义处没有设置@RequestMapping,则方法处标记的URL相对于WEB 应用的根目录

    二、获取请求参数

    1)RequestParam,将指定名称的参数赋值变量。如果是相同名称的变量,可省略注解@RequestParam

    @RequestMapping(value = "/register", method = RequestMethod.POST)
    public String register(@RequestParam("loginname") String name1, @RequestParam("password") String password,@RequestParam("username") String name2) { 
    		return "loginForm";
    	}
    

    2)RequestHeader,获取报文头参数

    @RequestMapping(value="/test")
    public void requestHeaderTest(@RequestHeader("User-Agent") String userAgent,  
    		     @RequestHeader(value="Accept") String[] accepts) {
     
    }
    

    3)CookieValue

    @RequestMapping(value="/cookie")
     public void cookiet(@CookieValue(value="JSESSIONID", defaultValue="") String sessionId) {
    			
    		 }
    

    4)能接受原生请求参数HttpServletRequest、HttpServletResponse、InputStream、OutputStream等

    @RequestMapping("download.do")
    public ModelAndView download(String docNo,HttpServletRequest request,
    			HttpServletResponse response) {
    }
    

    5)上传附件

    @RequestMapping("upload.do")
    public void upload(@RequestParam(value = "picFile", required = true)MultipartFilesoftwareFile,HttpServletRequest request) {
    		String fileName = softwareFile.getOriginalFilename();
    		File targetSoftwareFile = new File("D:", fileName);
    		if (!targetSoftwareFile.exists()) {
    			targetSoftwareFile.mkdirs();
    		}
    		try {
    			softwareFile.transferTo(targetSoftwareFile);
    		} catch (Exception e) {  
    		} 
    
    }
    
  • 相关阅读:
    java23种设计模式(五)--组合模式
    elasticsearch删除
    Jedis
    Redis主从复制(含哨兵模式)
    Redis持久化
    Redis基本知识(含数据类型)
    Linux学习(含有常用命令集)
    深入Kafka
    Kafka消费者
    Kafka生产者
  • 原文地址:https://www.cnblogs.com/walkwithmonth/p/10543605.html
Copyright © 2011-2022 走看看