HttpServletRequest ,HttpServletResponse 跳转web-inf内静态页面

一、HttpServletResponse resq,resp.sendRedirect如何跳转WEB-INF内静态页面

resp.sendRedirect跳转web-inf内静态页面会被阻拦。

二、使用步骤

1.步骤一:配置web.xml可以访问web-inf内静态页面

代码如下(示例):

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">



    <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.jpg</url-pattern>
    </servlet-mapping>


    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.html</url-pattern>
    </servlet-mapping>


    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>



    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>
</web-app>

2.步骤二:方法一:sendRedirect+jsp:forward 跳转,不可以直接重定向访问web-inf内

代码如下(示例):

 @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    //重定向跳转,可以跳转其他服务器
        resp.sendRedirect(req.getContextPath()+"/demo3");//绝对路径:跳其他sevlet类get
        resp.sendRedirect("/day_servlet/demo3");//tomcat虚拟路径+别名:跳转到get方法
       resp.sendRedirect("/day_servlet/success.jsp");
       //跳转页面,tomcat虚拟路径+别名,web/success.jsp,注意:不可以跳转WEB-INF内静态页面
       }

//success.jsp直接通过<jsp:forward跳转其他web-inf内静态页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<form name="testform">
    <jsp:forward page = "/WEB-INF/shou/shouye.html" /><%--jsp标签自动跳转WEB-INF页面--%>
</form>
</body>
</html>

:方法二:getRequestDispatcher直接跳转

代码如下(示例)

 @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    //注意:只能是跳转本项目的
       // req.getRequestDispatcher("/demo2").forward(req,resp);//跳转到其他servlet类,demo2是别名
        //req.getRequestDispatcher("/shouye.html").forward(req,resp);//跳转至页面,直接调用web下的shouye.html页面
        req.getRequestDispatcher("/WEB-INF/shou/shouye.html").forward(req,resp);//跳转至web//WEB-INF/shou/shouye.html页面
        req.getRequestDispatcher("/WEB-INF/shou/shouye2.jsp").forward(req,resp);//跳转至web//WEB-INF/shou/shouye.html页面

       }


该处使用的url网络请求的数据。


总结

方法一: 需要 先重定向WEB-INF外jsp页面,再用

目录

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值