基于 Servlet 的 Web 后端接口开发实践
【摘要】 一、实验目的理解 Servlet 的工作原理与生命周期,掌握 Tomcat 服务器部署 Web 项目的基础流程。学会使用 Servlet 编写后端接口,实现前端页面与服务端的数据交互。掌握请求参数获取、响应输出,了解编码乱码问题的解决方案。熟悉项目目录结构,完成简易用户信息查询接口开发与功能测试。二、实验环境操作系统:Windows11开发工具:IDEA 2024服务器:Apache Tom...
一、实验目的
- 理解 Servlet 的工作原理与生命周期,掌握 Tomcat 服务器部署 Web 项目的基础流程。
- 学会使用 Servlet 编写后端接口,实现前端页面与服务端的数据交互。
- 掌握请求参数获取、响应输出,了解编码乱码问题的解决方案。
- 熟悉项目目录结构,完成简易用户信息查询接口开发与功能测试。
二、实验环境
- 操作系统:Windows11
- 开发工具:IDEA 2024
- 服务器:Apache Tomcat 9.0
- 项目依赖:Servlet-api
- 浏览器:Chrome
三、实验原理
Servlet 是 JavaWeb 的核心组件,运行在服务端,用来接收客户端的 HTTP 请求并返回响应。Servlet 生命周期分为:实例化→初始化
客户端通过浏览器发送 GET/POST 请求,Tomcat 接收请求,匹配对应的 Servlet,执行代码处理业务逻辑,最后将结果返回前端页面。
init()→服务service()→销毁destroy()。
四、实验步骤
步骤 1:新建 Web 项目,导入 Servlet 依赖
在 IDEA 中创建 Java Enterprise 项目,选择 Web Application 模板,配置 Tomcat,在
WEB-INF/lib放入 servlet-api.jar 包,添加库引用。步骤 2:编写 Servlet 核心代码
java
运行
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
//注解方式配置访问路径,无需web.xml
@WebServlet("/userQuery")
public class UserServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//设置编码,解决中文乱码
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
//获取前端传入参数
String username = request.getParameter("username");
PrintWriter out = response.getWriter();
if("admin".equals(username)){
out.write("<h3>用户查询成功</h3>");
out.write("<p>用户名:admin,身份:管理员</p>");
}else{
out.write("<h3>用户查询成功</h3>");
out.write("<p>用户名:"+username+",身份:普通访客</p>");
}
out.close();
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//POST请求直接复用GET处理逻辑
doGet(request,response);
}
}
步骤 3:编写前端测试页面 index.html
html
预览
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>用户查询页面</title>
</head>
<body>
<form action="userQuery" method="get">
输入用户名:<input type="text" name="username">
<input type="submit" value="提交查询">
</form>
</body>
</html>
步骤 4:配置 Tomcat 并启动项目
- 在 IDEA 的 Run 配置中,选择 Tomcat Server,设置项目访问上下文。
- 点击启动,控制台无报错即代表服务器启动成功。
- 浏览器访问:
http://localhost:8080/项目名/index.html
步骤 5:功能测试
- 在输入框填写
admin提交,页面展示管理员信息。 - 填写其他名称,展示普通访客信息。
- 观察请求地址,验证接口能否正常接收参数、返回内容。
五、实验遇到的问题与解决
-
中文乱码现象:后端输出中文变成问号。解决:在代码最前面设置 request、response 的编码为 utf-8。
-
404 页面找不到现象:访问地址提示 404。原因:@WebServlet 路径写错,或者项目上下文路径配置错误。解决:核对注解中的访问路径,检查 Tomcat 部署设置。
-
500 服务器内部错误现象:页面 500。原因:代码空指针异常、包缺失。解决:查看 Tomcat 控制台报错信息,定位代码问题,确认 servlet 包已导入。
六、实验总结
本次实验搭建了基于 Servlet 的简易 Web 后端,实现了表单提交与后端数据响应。我理解了 HTTP 请求的收发流程,学会使用注解简化 Servlet 配置,也意识到编码、路径问题是 JavaWeb 开发里高频踩坑点。
Servlet 是 JavaWeb 的基础,后续可以在此基础上,结合数据库完成真实用户数据读取,进一步开发完整 Web 管理系统。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)