JSP中include静态包含 ,动态包含

简介: JSP中include静态包含 ,动态包含

1.include静态包含


格式:

<%@include file="要包含的页面地址"%>


特点:

1. 将内容进行了直接的替换

2. 静态包含只会生成一个源码文件,最终的内容全部在_jspService方法体中(源码文件中)

3. 不能出现同名变量

4. 运行效率高一点点。耦合性较高,不够灵活。


2.include动态包含


格式:


特点:

1. 动态包含相当于方法的调用

2. 动态包含会生成多个源码文件

3. 可以定义同名变量

4. 效率高,耦合度低


注:当动态包含不需要传递参数时,include双标签之间不要有任何内容,包括换行和空格


使用动态包含传递参数

<jsp:include page="要包含的页面路径">
<jsp:param name="参数名" value="参数值"/>
</jsp:include>


注:name属性不支持表达式,value属性支持表示


获取参数:

equest.getParameter(name); 通过指定参数名获取参数值


04-footer.jsp


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>底部</title>
</head>
<body>
    <h2>底部内容</h2>
    <%
        int a = 10;
        // 获取动态包含传递的参数
        String uname = request.getParameter("uname");
        String msg = request.getParameter("msg");
        out.print(uname+","+msg);
    %>
</body>
</html>

13.1.png


04-header.jsp


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>头部</title>
</head>
<body>
    <h2>头部内容</h2>
    <%
        int num = 1;
    %>
</body>
</html>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>include静态包含</title>
</head>
<body>
    <%--

13.2.png

   

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>include静态包含</title>
</head>
<body>
    <%--
        include静态包含
            格式:
                <%@include file="要包含的页面地址"%>
            特点:
                1. 将内容进行了直接的替换
                2. 静态包含只会生成一个源码文件,最终的内容全部在_jspService方法体中(源码文件中)
                3. 不能出现同名变量
                4. 运行效率高一点点。耦合性较高,不够灵活。
    --%>
    <%@include file="04-header.jsp"%>
    <h2>主体内容</h2>
    <%
        // int num = 1;
    %>
    <%@include file="04-footer.jsp"%>
</body>
</html>

13.3.png


05-include动态包含.jsp


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>include动态包含</title>
</head>
<body>
    <%--
        include动态包含
            格式:
                <jsp:include page="要包含的页面路径"></jsp:include>
            特点:
                1. 动态包含相当于方法的调用
                2. 动态包含会生成多个源码文件
                3. 可以定义同名变量
                4. 效率高,耦合度低
            注:
                当动态包含不需要传递参数时,include双标签之间不要有任何内容,包括换行和空格
            使用动态包含传递参数
                 <jsp:include page="要包含的页面路径">
                       <jsp:param name="参数名" value="参数值"/>
                 </jsp:include>
                 注:name属性不支持表达式,value属性支持表示
                 获取参数:
                    request.getParameter(name); 通过指定参数名获取参数值
    --%>
    <jsp:include page="04-header.jsp"></jsp:include>
    <h2>主体内容</h2>
    <%
        int a = 1;
    %>
    <jsp:include page="04-footer.jsp"></jsp:include>
    <%-- 动态包含传递参数 --%>
    <%
        String str = "hello";
        String url = "04-footer.jsp";
    %>
    <jsp:include page="<%=url%>">
        <jsp:param name="uname" value="admin"/>
        <jsp:param name="msg" value="<%=str%>"/>
    </jsp:include>
</body>
</html>

13.4.png


3.当动态包含不需要传递参数时,include双标签之间不要有任何内容,包括换行和空格


13.5.png


org.apache.jasper.JasperException: /05-include动态包含.jsp (行.: [38], 列: [39]) 使用“name”和“value”属性期望“jsp:param”标准操作

相关文章
|
6月前
|
Java
java实现动态验证码源代码——绘制验证码的jsp
java实现动态验证码源代码——绘制验证码的jsp
|
6月前
|
前端开发 Java
java实现动态验证码源代码——jsp页面
java实现动态验证码源代码——jsp页面
|
6月前
|
XML 前端开发 Oracle
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
63 2
|
6月前
|
Java 编译器
Jsp页面中两种include的使用
Jsp页面中两种include的使用
74 2
JSP中的include的两种用法
JSP中的include的两种用法
|
XML Java 数据格式
使用jsp:include嵌入页面的两种方式
使用jsp:include嵌入页面的两种方式
162 0
|
Java 关系型数据库 MySQL
JSP大学生动态预警系统myeclipse开发mysql数据库javaB/s结构jsp编程
JSP 大学生动态预警系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发系统主要采用B/S模式开发。
88 0
|
Java BI 项目管理
JSP动态测评系统myeclipse开发计算机程序web结构java编程
JSP 量化分级测评系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
52 0
|
XML 前端开发 Java
前端|静态到动态的实现—JSP技术
前端|静态到动态的实现—JSP技术
188 0
|
前端开发 Java
java实现动态验证码源代码——接受ajax的jsp
java实现动态验证码源代码——接受ajax的jsp