javaweb22/4/5

JSP

JSP=html+Java脚本(代码片段)+JSP动态标签
JSP本质上就是Servlet

JSP语法

1.将程序的结果输出到客户端

<%= new java.util.Date()%>

2.JSP脚本片段(正常的Java代码)

<%
    int sum=0;
    for (int i = 1; i <100; i++) {
        sum+=i;
    }
    out.println("<h1>nihao</h1>");
%>

3.脚本片段的再实现

<%
    int x=10;
    out.println(x);
%>
<p>JSP</p>
<%
    out.println(sum);
%>
<hr>
<%--在代码中嵌入HTML元素--%>
<%
    for (int i = 0; i <4 ; i++) {
%>
<h1>JSP</h1>
<%
    }
%>

4.JSP声明,会被编译到JSP生成Java的类中,其他的会生成到jspService方法中

<%!
    static {
        System.out.println("hello");
    }
    private int i=0;
    public void w(){
        System.out.println("bye");
    }
%>

JSP的注释不会再客户端显示,HTML就会

JSP指令

<%@ page %>

定制错误页面(一)

1.发生错误的页面

<%--若是出现500错误,跳转到error.jsp页面--%>
<%@ page errorPage="error/error.jsp" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <%
        int a = 1/0;
    %>
</body>
</html>

2.自定义的错误页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <%--   ..为返回上一级目录,下面是一张500图片--%>
    <img src="../img/img.png" alt="500">
</body>
</html>

3.结果

定制错误页面(二)

1.写一个错误页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <%
        int a = 1/0;
        out.println(a);
    %>
</body>
</html>

2.在web.xml中配置错误页面

 <error-page>
        <error-code>500</error-code>
        <location>/error/400.jsp</location>
    </error-page>

####<%@ include %>

提取共同的文件,比如网站都有共同的头部
1.编写头部jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <h1>头部</h1>
</body>
</html>

2.编写尾部jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <h1>尾部</h1>
</body>
</html>

3.编写主体jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<%--   @include会将两个页面合二为一 --%>
    <%@include file="common/header.jsp"%>
    <h1>主体</h1>
    <%@include file="common/footer.jsp"%>

<hr>

<%--    jsp:include标签相当于拼接页面 本质还是三个--%>
    <jsp:include page="common/header.jsp"/>
    <h1>主体</h1>
    <jsp:include page="common/footer.jsp"/>
</body>
</html>
posted @ 2022-04-07 21:35  想吃坚果  阅读(32)  评论(0)    收藏  举报