【JavaWeb】案例 1:记录网站的登录成功人数
👍如果对你有帮助,给博主一个免费的点赞以示鼓励
欢迎各位🔎点赞👍评论收藏⭐️
👀专栏介绍
【JavaWeb】 目前主要更新JavaWeb,一起学习一起进步。
👀本期介绍
本期主要介绍案例 1:记录网站的登录成功人数
文章目录
1.1、需求说明
登录成功后,在页面中显示您是第 x 位登录成功的用户.
1.2、流程分析
1.3、案例代码实现
该案例将模拟直接登录成功,需要的同学请自己参照昨天代码补全登录
login.jsp
UserServlet
msg.jsp
1.4、案例问题说明
因为只有一次请求响应,只有一个
request
对象。
UserServlet
为
request
设置数据,
msg.jsp
从
request
获取数据
这是由于 request 作用范围太小了,数据的传递 只在某次请求和响应之间有效。
1.5、知识讲解-ServletContext 快速入门
服务器启动的时候
,
为每个
WEB
应用创建一个单独的
ServletContext
对象
,
将
web.xml
中的配置信
息进行封装。
相当于某个项目的身份证
作用:
获取项目配置信息;
项目内进行信息共享;
Servlet
中的获取方式:
getServletContext();
servlet 的初始化参数, 通过 ServletConfig 对象获得
整个项目的初始化参数, 通过 ServletContext 对象获得(getInitParameter(“参数名”))
1.6、案例代码实现
UserServlet
1.3、知识讲解-response
在
Servlet API
中,定义了一个
HttpServletResponse
接口,它继承自
ServletResponse
接口,专
门用来封
装
HTTP
响应消息。
Response
对象封装了响应行、头、体三部分信息,我们可以通过调用
response
对象的方法,来
轻松控
制服务器向浏览器写响应信息
1.3.1、response 对象操作响应行(了解)
setStatus(int status);
该方法用于设置
HTTP
响应消息的状态码,并生成响应状态行。由于响应状态行中的状态描述信
息直接与状态码相关,而 HTTP
版本由服务器确定,因此,只要通过
setStatus(int status)
方法设
置了状态码,即
可实现状态行的发送。
若未设置状态码,且服务器运行正常,
Web
服务器会默认产生一个状态码为
200
的状态行。
sendError(int sc,String errorMsg);
该方法用于发送表示错误信息的状态码。
建议该方法仅发送
4xx
和
5xx
状态码。
1.3.2、response 对象操作响应头
当
Servlet
向客户端发送响应消息时,由于
HTTP
协议的响应头字段有很多种,为此,在
HttpServletResponse
接口中,定义了一系列设置
HTTP
响应头字段的方法,如表
4-1
所示。
表1-1 设置响应消息头字段的方法
1.3.3、response 对象操作响应体
响应体信息无限,所以一般用来传递大量数据。
getOutputStream()
向响应体输出二进制字节流信息。【文件下载】
getWriter()
向响应体输出字符流信息。【字符串及前端代码输出】
若输出前端代码,则会被浏览器解析执行
两个方法我们都使用其
write()
方法进行数据输出。