jsp 中include使用问题

如果在需要在jsp页面做页面包含时 会使用到include 指令

来进行页面包含操作

这里是页面的头部 文件名称是head.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    网站的头部  页头 <br>

这个是页面尾部 文件名称是 foot.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
     网页尾部 尾部测试<br>

最后在这个页面里面显示 test.jsp

<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>include指令(静态包含)</title>
  </head>
  
  <body>
    <%@include file="/public/head.jsp" %>
  
      网页核心变化区内容  一个格式良好的jsp页面<br>
      <%@include file="/public/foot.jsp"  %>
  </body>
</html>

最后测试一下 就是一个格式良好的jsp了 核心代码是 静态包含

<%@include file="/public/head.jsp" %>
  
 网页核心变化区内容  一个格式良好的jsp页面<br>
 <%@include file="/public/foot.jsp"  %>

 注意我这里的public是一个文件 file里面是相对WebRoot的路径

当然你也可以写这样的包含 只需修改核心代码

<%request.getRequestDispatcher("/public/head.jsp").include(request, response); %>
     这里是核心内容 希望显示的内容
 <%request.getRequestDispatcher("/public/foot.jsp").include(request, response); %>

可以达到一样的效果 因为你知道jsp其实就是提供九个对象 而这个不过是使用了request重定向到那个文件 然后让其显示在页面上

不过这个是动态包含

恐惧源于无知,代码改变世界
原文地址:https://www.cnblogs.com/ad-zhou/p/8985309.html