向Servlet发送请求
创作时间:
作者:
@小白创作中心
向Servlet发送请求
引用
CSDN
1.
https://blog.csdn.net/weixin_42349568/article/details/137104953
本文将通过一个简单的登录案例,详细介绍如何使用Tomcat和Servlet进行Web开发。从项目创建到最终运行,每个步骤都配有详细的代码和说明,适合初学者快速入门。
一、新建项目
新建的Maven项目默认是空的,需要将其配置为Servlet项目。
二、添加Web模块
在新建的空项目中,添加一个Web模块。
三、引入Servlet依赖
在项目的pom.xml
文件中添加Servlet依赖,编辑器会自动下载所需的库文件。
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
</dependencies>
四、编写MyServlet类
在Servlet中,需要重写以下方法来处理HTTP请求:
init()
: Servlet初始化时调用doGet()
: 处理HTTP GET请求doPost()
: 处理HTTP POST请求doPut()
: 处理HTTP PUT请求service()
: 根据HTTP请求类型调用对应的doXXX()方法destroy()
: Servlet销毁前调用
下面是具体的MyServlet类实现:
package com.masiyi.servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet("/MyServlet")
public class MyServlet extends HttpServlet {
public MyServlet() {
super();
}
@Override
public void init() throws ServletException {
super.init();
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doGet(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html;charset=UTF-8");
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
String username = req.getParameter("username");
String pwd = req.getParameter("pwd");
System.out.println("用户名:" + username + ":密码:" + pwd);
PrintWriter writer = resp.getWriter();
writer.print("用户名:" + username);
writer.print("密码:" + pwd);
writer.close();
super.doPost(req, resp);
}
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.service(req, resp);
}
@Override
public void destroy() {
super.destroy();
}
}
五、配置Servlet访问路径
可以通过web.xml
文件或注解方式配置Servlet的访问路径。
在web.xml
中配置如下:
<servlet>
<servlet-name>myServlet</servlet-name>
<servlet-class>com.masiyi.servlet.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myServlet</servlet-name>
<url-pattern>/myServlet</url-pattern>
</servlet-mapping>
或者使用注解方式:
@WebServlet("/MyServlet")
六、编写JSP页面
在Web项目的根目录下创建index.jsp
文件,用于接收用户输入并提交到Servlet处理。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>向Servlet发送请求</title>
</head>
<body>
<%--注意:
action的值 是 :web.xml 文件中的 url-pattern 的值。
--%>
<form action="/MyServlet" method="post">
用户名: <input type="text" name="username"> <br>
密码: <input type="password" name="pwd"> <br>
<input type="submit" value="提交">
</form>
</body>
</html>
七、运行项目
使用IDEA的Tomcat插件部署项目。
八、运行结果
当浏览器访问localhost:8080
时,会显示index.jsp
页面。点击提交按钮后,浏览器的URL会变为localhost:8080/MyServlet
,并发起POST请求。由于@WebServlet("/MyServlet")
注解将该路径映射到MyServlet
类,因此会执行该类中的业务逻辑。
总结:Servlet是Java中用于处理Web请求的一种技术,它封装了HTTP请求和响应的处理逻辑。通过继承Servlet类并重写其中的方法,可以创建自定义的Servlet类,用来拦截和处理HTTP请求,从而完成业务代码逻辑。
热门推荐
江雪写的是什么季节 古诗原文及翻译
三眼皮是正常现象吗?专业医生为你解答
买黄金注意了,618批次抽检不合格,涉及中国黄金、老凤祥等
鸣潮椿命座效果是什么 鸣潮椿命座效果攻略
普通家庭买电车省油却不一定省钱,真相竟是这样!
如何管理血压
房屋是否漏水怎么检测
MySQL分组查询获取每组最新的一条数据详解(group by)例子解析
如何理解“观自在”的真正内涵?如何“观自在”?
屋顶能不能装光伏发电?房顶上安装光伏发电好不好?
演讲者如何设计自己的演讲结构以提升吸引力
车牌中间为啥会有个“小圆点”?是为了装饰,还是有特殊作用?
什么是车牌防伪
在SPSS里如何整理数据库
神经元衰减激活方法和数学模型助力人工智能和脑科学领域取得新进展
共筑区域妇幼健康新未来!珠海市妇幼保健院打造粤港澳大湾区“妇幼健康共同体”
电子商务对环境的影响:了解电子商务在全球可持续发展中的作用
紧急任务处理:如何在短时间内完成任务
古人祈雨有多拼?云阳绝壁上刻出乘龙神像
华为路由器/交换机Stelnet远程登录配置详解
怎么拿到一个网页的js文件
Git开源项目如何查看源码
肝脏现有的常用检查手段主要包括哪些
隔离霜的正确使用方法及步骤详解
四川泸州:加快建设成渝地区双城经济圈南翼中心城市
消食化积,健脾胃的简易秘诀
美国CAR-T新疗法ALLO-316治疗肾癌潜力巨大
“模糊”的DOT眼镜能控制近视?是智商税吗?
江苏无锡:逐“新”提“质”,夯实高质量发展“压舱石”
比佛利热水器更换镁棒:保护内胆延长使用寿命的关键步骤