@RequestMapping
- 配置路径,还可以配置请求方式、请求头、响应头等等。
- 客户端提交的请求是配置路径则自动执行方法
@ResponseBody
- 一般添加到控制器类上,表示此控制器类中所有的处理请求的方法都将响应正文。
- 响应正文,将返回值直接响应到客户端。
- 如果不配置响应正文,则处理请求的方法的返回值表示“视图组件的名称”。
@RestController
- 同时具有@Controller和@ResponseBody注解的效果。
建议向客户端响应JSON格式的字符串,添加jackson-databind依赖项
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
注:在Spring MVC项目中,需要在配置类上添加@EnableWebMvc注解,否则导致406错误。
springmvc.vo.UserVO
package springmvc.vo;
public class UserVO {
private String username;
private String password;
private String email;
// 补充3个属性的Setter & Getter
}
UserController
的代码片段:
@GetMapping ("/info.do")
public UserVO info(){
UserVO userVO = new UserVO();
userVO.setUsername("s1");
userVO.setPassword("111111");
userVO.setEmail("s1@qq.com");
return userVO;
}
SpringMvcConfig(补充@EnableWebMvc
注解)
@Configuration // 此注解不是必须的
@EnableWebMvc
@ComponentScan("cn.tedu.springmvc") // 必须配置在当前配置类,不可配置在Spring的配置类
public class SpringMvcConfig implements WebMvcConfigurer {
}