1. 程式人生 > >jsp頁面中的java程式碼(jsp表示式、jsp小指令碼、jsp宣告)

jsp頁面中的java程式碼(jsp表示式、jsp小指令碼、jsp宣告)

jsp頁面中的java程式碼,有三種:jsp表示式、jsp小指令碼、jsp宣告。

編寫位置:頁面的任意位置。
作用:控制頁面中可變內容的產生。

1.jsp表示式

語法規則:<%= ... %>

轉譯成 Servlet 時的規則:在 service()方法中用 out.print語句輸出該變數、表示式、方法的值。


2.jsp小指令碼

語法規則:<% ... %>

轉譯成 servlet 時的規則:原封不動成為Servlet類的 servlet()方法裡面的一段程式碼。


3.jsp宣告

語法規則:<%! ... %>
合法內容:成員屬性或成員方法的宣告。

轉譯成 servlet 時的規則:轉譯成為Servlet類中成員屬性或成員方法。

-------------------------------------------------JSP頁面展示九九乘法表-----------------------------------------------

<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
    <%!
        //1.通過表示式呼叫,在頁面上顯示
        String printNine1()
        {
            String s = "";
            for(int i=1;i<=9;i++){
                for(int j=1;j<=i;j++){
                    s+=i+"*"+j+"="+(i*j)+"&nbsp;&nbsp;&nbsp;&nbsp;";
                }
                s+="<br>";
            }
            return s;
        }
    
        //2.通過指令碼呼叫,在頁面上顯示
        void printNine2(JspWriter out)throws Exception{
            for(int i=1;i<=9;i++){
                for(int j=1;j<=i;j++){
                    out.println(i+"*"+j+"="+(i*j)+"&nbsp;&nbsp;&nbsp;&nbsp;");
                }
                out.println("<br>");
            }
        }
    
    %>

    <h1>九九乘法表</h1>
    <hr>
    <!-- 1.通過表示式呼叫,在頁面上顯示 -->
    <%= printNine1() %>
    <hr>
    <!-- 2.通過指令碼呼叫,在頁面上顯示 -->
    <% printNine2(out); %>
</body>
</html>