当前位置:网站首页>servlet 教程 2:返回 jsp 页面
servlet 教程 2:返回 jsp 页面
2022-08-07 06:06:00 【悟世君子】
上一篇文章讲解了 servlet 环境搭建,本文介绍 servlet 相关用法
上一篇文章地址:servlet 教程 1:环境搭建和新建 servlet 项目
1、返回 WebContent 目录下的 jsp 页面
WebContent 目录下的 jsp 页面,可以直接通过地址访问
在 WebContent 目录下新建 demo.jsp
在项目的 WebContent 目录下右键,选择 New、Jsp File

新建 demo.jsp

将编码修改为 UTF-8

修改后添加 h1标签,内容如下
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>demo 页面</h1>
</body>
</html>启动项目
浏览器访问:http://localhost:8080/servlet-learn/demo.jsp

2、访问 WEB-INF 目录下的 jsp 页面
WEB-INF 目录下的 jsp 页面是不能通过地址直接访问的,因此,想要访问 WEB-INF 目录下的 jsp 页面,需要使用 Servlet 中转一下
在 WEB-INF 目录下新建 user.jsp,步骤和上面一样
user.jsp 页面内容
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>user 页面</h1>
</body>
</html>
浏览器直接访问

404 访问不到
如何使用 servlet 中转呢?新建一个 servlet,浏览器请求 servlet 地址,serlvet 返回 jsp 页面
新建 UserServlet
package com.learn;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/user")
public class UserServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.getRequestDispatcher("WEB-INF/user.jsp").forward(req, resp);
}
}
UserServlet 使用 @WebServlet 注解,因此无需在 web.xml 文件中配置 servlet
重启 tomcat
浏览器请求地址:http://localhost:8080/servlet-learn/user

至此完
边栏推荐
猜你喜欢
随机推荐
SQL常用命令练习
腾讯云服务器 2003 Can‘t connect to MySQL server on ‘124.221.222.175‘ (0)
MyTinySTL的rb_tree源码分析
【井字棋】
对于端口的粗浅理解
使用IDEA作为开发工具,修改完项目中部分文件代码后,不起作用
Xcode13.1 real machine debugging
C trap - infinite loop problem caused by array out of bounds
slot插槽二三事
关于面试
TRACE32 - Memory Fill Test Data.Pattern
VoLTE基础自学系列 | VoLTE网络架构
Reference Answers to "International Academic Paper Writing and Publishing"
js高阶函数
[Array Questions] LeetCode 969. Pancake Sorting
C陷阱——数组越界引发的死循环问题
数组去重的几种办法
mysql解析json数据组,获取数据组所有字段
#region 与 #endregion 用法(注释代码的折叠)
一、循环,选择语句的细节。基本数据类型,和引用数据类型作为方法的参数的区别笔记








