欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SpringMVC--RequestMapping

程序员文章站 2023-10-31 18:58:04
一、RequestMapping映射URL 1)RequestMapping注解指定控制器能处理哪些URL请求,可用于类定义和方法定义处。 2)RequestMapping常用属性有value、params、method、headers,表示请求URL地址、请求方法、请求参数及请求头。他们之间是与的 ......

一、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) {  
		} 

}