JSP共通命令

6147 ワード

一.インストラクション要素
JSP命令には、page、include、taglibが含まれる.
Page命令は現在のページに対する命令であり、
includeコマンドは、別のファイルを含める方法を指定します.
taglibコマンドは、カスタムタグライブラリを定義およびアクセスするために使用されます.
1.page指令
Page命令の設定構文フォーマットは、<%@page language=「java」attribute=「value」...%>
コマンドに含まれるいくつかの一般的なプロパティについて説明します.
Languageはページにjavaコードextendsを指定するためにJSPに翻訳されたサーブレットクラスがどのクラスを継承するかを指定します.一般的にimportは指定しません.
jsp Webページで使用するクラスを指定します.JSPエンジンはjavaを自動的にインポートする.lang.*,javax.servlet.スイッチの関連パッケージ複数のパッケージ間をカンマで接続するには、次のようにします.
<%@ page import=”java.io.*,java.util.Date”%>
session
現在のページがセッションオブジェクトを導入するかどうかを定義します.trueに設定すると、sessionという名前のオブジェクトが隠され、falseの場合は使用できません.デフォルトはtrueです.
contentType
jsp Webページの出力時のデータを設定する場合、使用する文字の圧縮方式、および使用する文字セットは、中国語Webページを作成する場合、以下のように設定されます.
<%@page contentType=”text/html;charset=Gb2312”%>
このプロパティのデフォルト値は「text/html」です.charset=ISO-8859-1”.
buffer
jspページのバッファサイズを「8 k」に設定し、「none」に設定すると、バッファを使用しないことを示し、すべての応答出力がPrintWriterによってサーブレットResponseに直接書き込まれます.
AutoFlushキャッシュがいっぱいになると自動的にリフレッシュされ、trueまたはfalse、デフォルトはtrue isTreadSafe
現在のページがスレッドセキュリティをサポートしているかどうかを定義します.trueの場合、ページはjspエンジンから複数のリクエストを同時に受信する可能性があります.逆に、jspエンジンは受信したリクエストをキューに入れ、現在のページは同じ時点で1つのリクエストしか処理できません.デフォルトはtrueです.false時servletはSingleThreadModeインタフェースを実現し、要求を単一スレッドモードで処理します.詳細は
サーブレットスレッドセキュリティ
info
ページのテキスト情報を設定し、サーブレットを通過することができる.getServiceletInfo()のメソッドは、文字列を取得します.
errorPage
別のjspページへのURLを定義します.ページにキャプチャされていない異常が発生すると、エラー情報はthrow文で投げ出され、エラー情報ページに設定されたjspページはexceptionでオブジェクトを隠し、エラー情報を取得します.
エラー処理ページはデフォルトではありません.普通はwebです.xmlでの構成エラーページ
<error-page>
    <!--      --> 
    <exception-type>java.lang.ArithmeticException</exception-type>
    <!--                       -->
    <error-code>404</error-code>
    <!--       ,/    web   -->
    <location>/errors/error.jsp</location>
</error-page> 
isErrorPage
このjspページがエラー処理ページであるかどうかを設定します.デフォルトはfalseです.trueに設定すると、jspページは、隠されたexceptionオブジェクトにアクセスし、エラーが発生したページから送信されたエラー情報を取得します.エラーメッセージを取得する構文は次のとおりです.
<% =exception.getMessage()%>
pageEncoding
ページエンコーディングフォーマット
isELIgnored
EL式を無視するか、デフォルトfalse
2.includeコマンドは、現在のJSPページと含まれているJSPページを組み合わせてservletを1つだけ生成する内容を直接含んでいます.
include命令と動作の違いinclude命令の使用方法:(静的に含む、コンパイル時に含む)<%@include file="include.jsp"%>動作の使用方法:(動的に含む、実行時に含む)等価:contextPage.include("/include.jsp");等価:request.getRequestDispacher("/include.jsp").include(request,response); 本質的な違いは方法の実装にある:include命令は対応する内容を直接含み、現在のJSPページと含まれるJSPページを組み合わせてservletを1つだけ生成する.動作はorgを呼び出す.apache.jasper.runtime.JspRuntimeLibrary.include(request, response, "include.jsp", out, false);実現します.これは,現在のJSPページと含まれるJSPページをそれぞれ対応するservletを生成し,ページにアクセスする際に含める.開発の過程で、静的含3を使用することが望ましい.taglib指令
これによりstatuオブジェクトが生成され、現在の反復回数を表すcount属性があります${statu.cont}
urlを書き換え、ユーザーがクッキーを無効にしたときにurlの後ろにJESSIONIDパラメータを付け、${newurl}varを指定しないときに書き換えたurlを直接出力(書き換えるときにurlの前に/webapppNameを付ける)ラベル体間ででurlにパラメータを追加し、値が中国語のときに自動的に符号化する
二、スクリプト要素
  • 声明<%!%>対応するコードはサーブレットクラスのサービスメソッドの外部にそのまま置かれるので、サーブレットクラス対応の静的コードブロック、メンバー変数、メソッド
  • を書くことができる.
  • スクリプトの断片<%>>に対応するコードは、サーブレットクラスのサービスメソッドの内部にそのまま配置され、9つの暗黙的オブジェクト
  • を使用することができる.
  • スクリプト式<%=%>に対応する変更はoutを通過する.write()コードはサービスメソッド内部
  • に出力される.
  • 注釈<%---%>JSP注釈、中の内容は無視され、何の処理もしない
  • 三.アクション要素
    1. 2. 3. 4. 5. 6. 7.
    1.動作はパラメータを伝達するために使用され、動作と組み合わせて使用する必要があります.構文形式:2.アクションは、HTMLページまたはJSPページを動的にロードするために使用されます.構文フォーマット:jspページでは、戻りパラメータ:requestを次の構文で取得できます.getParameter("name1"); パラメータを渡さない場合、構文形式は以下の通りである:例:a.jspページコード:b.jspページコードは以下の通りである:名前1:<%=request.getParameter("name 1")%>名前2:<%=request.getParameter("name 2")%>「include標準アクション」と「include命令」の違いは、「include標準アクション」に含まれるページが実行時に追加され、一般的に静的包含と呼ばれる「include命令」がコンパイル時に追加され、一般的に動的包含と呼ばれる3.アクションは、ブラウザに表示されるページを別のHTMLページまたはjspページに導くために使用されます.構文フォーマット:もちろん、アクションにもパラメータを追加できます.パラメータの設定と取得方法はと似ています.4.動作はappletをロードするために使用され、HTML構文のおよびタグと同じ用途で使用されます.この動作はクライアントで実行される5.このラベルは解析時に、まず4つの役割ドメインからbeanName属性を検索し、存在するかどうかを見て、直接使用し、新しいclassaaaaaラベルボディのaaaaaをインスタンス化しない限り印刷されません.beanがインスタンス化に成功し、4つの役割ドメインから検索された場合、ラベルボディの内容は6.jsp:serProperty>パラメータparamNameの値を指定した属性を設定します.8種類の基本タイプデータpropertyが*に指定されている場合、要求パラメータを使用してbeanオブジェクトに割り当てられたすべてのパラメータを表す7.bean属性がnullの場合、getPropertyによって得られる文字列nullは空ではなく文字列nullです