【愚公系列】2023年06月 Java教学课程 138-Spring MVC框架的Servlet相关接口详解

举报
愚公搬代码 发表于 2023/06/30 23:05:29 2023/06/30
【摘要】 一、Servlet相关接口-Servlet相关接口替换方案Spring MVC框架是一个基于MVC模型的Web应用程序框架,用于创建Web应用程序。在Spring MVC框架中,Servlet相关接口包括HttpServletRequest、HttpServletResponse和HttpSession等。• HttpServletRequest接口表示HTTP请求• HttpServlet...

一、Servlet相关接口-Servlet相关接口替换方案

Spring MVC框架是一个基于MVC模型的Web应用程序框架,用于创建Web应用程序。在Spring MVC框架中,Servlet相关接口包括HttpServletRequest、HttpServletResponse和HttpSession等。

• HttpServletRequest接口表示HTTP请求

• HttpServletResponse接口表示HTTP响应

• HttpSession接口表示HTTP会话。这些接口是开发Web应用程序时经常使用的重要接口

SpringMVC提供访问原始Servlet接口API的功能,通过形参声明即可

@RequestMapping("/servletApi")
public String servletApi(HttpServletRequest request,
HttpServletResponse response, HttpSession session){
System.out.println(request);
System.out.println(response);
System.out.println(session);
request.setAttribute("name","itheima");
System.out.println(request.getAttribute("name"));
return "page.jsp";
}

Head数据获取

• 名称: @RequestHeader

• 类型: 形参注解

• 位置:处理器类中的方法形参前方

• 作用:绑定请求头数据与对应处理方法形参间的关系

• 范例:

@RequestMapping("/headApi")
public String headApi(@RequestHeader("Accept-Language") String head){
System.out.println(head);
return "page.jsp";
}

Cookie数据获取

• 名称: @CookieValue

• 类型: 形参注解

• 位置:处理器类中的方法形参前方

• 作用:绑定请求Cookie数据与对应处理方法形参间的关系

• 范例:

@RequestMapping("/cookieApi")
public String cookieApi(@CookieValue("JSESSIONID") String jsessionid){
System.out.println(jsessionid);
return "page.jsp";
}

Session数据获取

• 名称: @SessionAttribute

• 类型: 形参注解

• 位置:处理器类中的方法形参前方

• 作用:绑定请求Session数据与对应处理方法形参间的关系

• 范例:

@RequestMapping("/sessionApi")
public String sessionApi(@SessionAttribute("name") String name){
System.out.println(name);
return "page.jsp";
}

Session数据设置

• 名称: @SessionAttributes

• 类型: 类注解

• 位置:处理器类上方

• 作用:声明放入session范围的变量名称,适用于Model类型数据传参

• 范例:

@Controller
@SessionAttributes(names={"name"})
public class ServletController {
@RequestMapping("/setSessionData2")
public String setSessionDate2(Model model) {
model.addAttribute("name", "Jock2");
return "page.jsp";
}
}


【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。