【servelt原理_9_servlet应用___】

news/2024/7/3 6:32:08

servlet应用***

1.request对象
是当客户端向服务器端发送请求时,服务器为本次请求创建request对象,并在调用Servlet的service方法时,将该对象传递给service方法。Request对象中封装了客户端发送过来的所有的请求数据。
在这里插入图片描述
①:doGet()方法接收request数据
编写html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="/SecondServlet/regist" method="get"> 
		用户名:<input type="text" name="username"/>
		密码:<input type="text" name="password"/>
		<input type="submit" value="注册">
	</form>
</body>
</html>

编写doGet()方法

@WebServlet("/regist")
public class RegistServlet  extends HttpServlet{
	
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// TODO Auto-generated method stub
		String username = req.getParameter("username");
		String password = req.getParameter("password");
		
		System.out.println(username + " " + password);
	}

}

②:doPost()方法接收request数据
编写html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="/SecondServlet/regist" method="post"> 
		用户名:<input type="text" name="username"/>
		密码:<input type="text" name="password"/>
		<input type="submit" value="注册">
	</form>
</body>
</html>

编写doPost()方法

@WebServlet("/regist")
public class RegistServlet  extends HttpServlet{
	
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// TODO Auto-generated method stub
		String username = req.getParameter("username");
		String password = req.getParameter("password");
		
		System.out.println(username + " " + password + "dopost");
	}

}

③:请求乱码问题
由于request是接收来自用户的请求,服务器会根据编码格式将请求转换。服务器端默认的编码格式为ISO-8859-1(此编码不支持中文),而我们用户浏览器默认是utf-8的编码格式,所以往往会产生乱码。要想解决乱码问题,需要设置request当中的编码格式,告诉服务器以何种形式来解析数据。或者在接收到乱码以后,通过何种编码格式进行还原

方式一:

request.setCharacterEncoding("UTF-8");

该方法只针对POST有效(必须在接收数据之前设定)

方式二:

new String(request.getParameter(name).getBytes("ISO-8859-1"),"UTF-8"))

借助String对象的方法,该种方式对任何请求有效,都是通用的。
Tomcat8以后的get请求时不会出现乱码的。


http://lihuaxi.xjx100.cn/news/298863.html

相关文章

2022年十一届认证杯(小美赛)C题思路新鲜出炉

对人类活动进行分类 人类行为理解的一个重要方面是对日常活动的识别和监控。一个可穿戴的活动识别 系统可以提高许多关键领域的生活质量&#xff0c;如动态监测、家庭康复和跌倒检测。基于 惯性传感器的活动识别系统用于监测和观察老年人远程个人报警系统[1]&#xff0c;检测和…

初识Thread类与创建多线程的方法

目录 1.创建一个线程 2.start()方法与run()方法 3.查看线程 4.创建线程的各种方法 4.1实现Runnable接口 4.2使用匿名内部类 4.3使用匿名内部类,实现Runnable 4.4使用Lambda表达式 1.创建一个线程 Java操作线程最核心的类就是Thread类 创建线程有很多方法,下面我们写一…

MybatisPlus 处理保存实体对象时,对于枚举类型的数据库存储问题以及解决 @EnumValue 失效问题

MybatisPlus 处理保存实体对象时&#xff0c;对于枚举类型的数据库存储问题以及解决 EnumValue 失效问题1. 前言1.1 先看问题代码1.2 存在的问题2. 解决前言问题&#xff08;自定义&#xff09;2.1 自定义枚举转换器2.2 附源码&#xff1a;2.3. 参考3. 解决 上述 EnumValue 失效…

菜狗杯Misc抽象画wp

目录一、拿到题目先干嘛二、具体的解密操作1.把文本放到CyberChef中用Magic解密2.把完整的解密内容复制出来3.打开010并以hex格式粘贴内容4.点一下HEX5.保存成png三、用工具拿到隐写内容一、拿到题目先干嘛 题目附件是一个txt&#xff0c;打开里面就是各种字符&#xff0c;拿去…

【新知实验室-TRTC开发】实时音视频之集美真心话

目录 前言&#xff1a; 一、说说TRTC呗 语音互动直播 语聊房 语音电台 二、成为TRTC的体验官 1、1分钟了解TRTC产品 2、2分钟新手入门 3、别忘了入场券&#xff0c;也别告诉别人哦 三、3分钟完成新应用搭建 1、解压下载源码 2、修改JS文件 3、修改index文件 4、和集…

HTML简单的个人博客网站 DIV学生网页设计作品 dreamweaver作业静态HTML网页设计模板 个人网页作业制作

&#x1f389;精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业…

基于Java旅游网站管理系统、Java旅游线路和景点网站系统设计与实现 毕业设计开题报告

本科生毕业论文 基于java(springboot框架)旅游网站管理系统 开题报告 学 院&#xff1a; 专 业&#xff1a; 计算机科学与技术 年 级&#xff1a; 学生姓名&#xff1a; 指导教师&…

hevc pps解析

在编码视频流中&#xff0c;一个CVS包含多幅图像&#xff0c;每幅图像可能包括一个或者多个SS&#xff0c;每个SS头提供其所引用的PPS标示号&#xff0c;以此得到相应PPS中的共用信息&#xff0c;对于同一幅图像&#xff0c;其内所有的SS都用同一个PPS&#xff0c;需要注意的是…