准备工作
1.导入json依赖
点击查看代码
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.15.2</version>
</dependency>
2.声明配置类
点击查看代码
@Configuration
@ComponentScan("com.wind")
@EnableWebMvc
public class MvcConfig {
}
3.ioc容器初始化
点击查看代码
public class SpringMvcInit extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[0];
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class[]{MvcConfig.class};
}
@Override
protected String[] getServletMappings() {
return new String[]{"/"};
}
}
cookie
@Controller
@RequestMapping("cookie")
@ResponseBody
public class CookieController {
@RequestMapping("get")
public String getCookie(@CookieValue(value = "webCookie") String cookie){
return cookie;
}
@RequestMapping("save")
public String setCookie(HttpServletResponse response){
Cookie cookie = new Cookie("webCookie","v1");
response.addCookie(cookie);
return "cookie已创建";
}
}
JSON数据
@Controller
@RequestMapping("json")
@ResponseBody
public class JsonController {
@PostMapping("data")
public String jsonData(@RequestBody Person person){
System.out.println("person = " + person);
return person.toString();
}
}
获取请求头信息
@Controller
@RequestMapping("headers")
@ResponseBody
public class Header {
@RequestMapping("head")
public String getHeader(@RequestHeader("HOST")String host){
return "host = " + host;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了