如果介绍有误请评论。
通常写在类上
作用:处理页面的HTTP请求
通常写在类上
相当于@Controller
+@ResponseBody
,@ResponseBody
作用见下文
作用:既可以作用在类上,也可以作用在方法上,也可以同时作用在类和方法上,其作用是指明该类或者该方法响应哪个路径下的请求
通常使用这些注解都是Controller后缀加配置Mapping后缀来使用的。以下是**@Controoller+@RequestMapping**的使用。
package com.it.lms.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* HelloController控制器类——返回一个String字符串
* @author CZX
*/
@Controller
@RequestMapping("/")
public class HelloController {
@RequestMapping(value = {"/login","/","/login.html"})
public String hello(){
//调用业务,接受前端参数
return "login";
}
@RequestMapping(value = "/index")
public String toIndex(){
return "index";
}
}
第一个@Controller
和@RequestMapping("/")
,在启动项目之后,访问http://localhost:8080/的页面请求,就会调用hello()方法来处理这个页面请求,这时页面就会显示login所对应的页面。 同理,访问http://localhost:8080/login
或http://localhost:8080/login.html
的页面请求亦是调用hello()方法来处理这个页面请求。
@RequestMapping(value = "/index")
,则是你访问http://localhost:8080/index
的页面请求,就会调用toIndex()
方法来处理这个页面请求,这时页面就会显示index所对应的页面。
注意:本项目的默认端口为8080,访问地址默认为本机,使用@RequestMapping的时候,如果参数仅有value的话,可以省略不写。
使用这些需要先了解请求与处理方法之间的映射关系
页面请求通常是@RequestMapping("/")
这些带有Mapping字眼的注解。例如hello()方法所对应的页面请求就有三个。
返回json
字符串数据
@RequestMapping("/id")
@ResponseBody
public HashMap<String,String> toList(){
HashMap<String,String> lists;
lists = new HashMap<>();
lists.put("code","1232");
lists.put("status","1");
return lists;
}
访问http://localhost:8080/id,会看到如下页面
@GetMapping是一个组合注解,是**@RequestMapping(method = RequestMethod.GET)**的缩写
@PostMapping也是一个组合注解,是**@RequestMapping(method = RequestMethod.POST)**的缩写
@RequestMapping(value = "/register")
public String toRegister(){
return "register";
}
@RequestMapping(value = "/register1")
public String toRegister1(){
return "register1";
}
@GetMapping("toRegister1")
public String Register1( String username,
String password){
return "index";
}
@PostMapping("toRegister")
public String register(@RequestParam String username,
@RequestParam String password){
return "index";
}
在浏览器分别访问http://localhost:8080/register1
和http://localhost:8080/register
输入123,33,点击注册跳转到的页面的url分别是
http://localhost:8080/toRegister1?username=123&password=33
和 http://localhost:8080/toRegister
这两个注解的不同就是提交方式的不同,从而导致跳转的url不同
项目源码地址:gitee项目源码
资源链接:项目源码