jasper codeblock


.jspでjavaコードを記述する
一般html形式のjspファイルで変数を宣言しjava符号化を加える場合は、コードブロックを使用します.コードブロックを使用しない場合、Jasperはその内容を画面に直接出力します.
コードブロックは<%>です.あなたが置きたいjavaコードをブロックに入れることができます.
<% 
int x = 1;
int y = 2;
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
...
(例)数式の挿入
y=x+3をjavaコードとしてspiコードに入れる場合は、次のようにコードブロックをjspファイルに入れるだけです.
<%
y = x + 3
%>
Jasperは下図のようにハーフコードに変換します.
public final class calculator_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent, org.apache.jasper.runtime.JspSourceImports
{
//メンバー関数、メンバー変数
public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
throws java.io.IOException, javax.servlet.ServletException {
//ゾーン変数アルゴリズム
y = x + 3;
(例)yの値はy
文字列の元と変数の値をシーケンスコードに配置する場合は、次のように記述できます.
yの値<%out.print(y) %>
より簡便な方法を以下に示す.
yの値<%=y%>
Jasperは下図のようにハーフコードに変換します.
public final class calculator_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent, org.apache.jasper.runtime.JspSourceImports
{
//メンバー関数、メンバー変数
public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
throws java.io.IOException, javax.servlet.ServletException {
//ゾーン変数アルゴリズム
out.write(「yの値は」)
out.print(y);
.jspでjavaメソッドを作成する
jspでは、上記のようにコードブロックにjavaコードを記述し、コードブロックのコードファイルでは、コードが「領域変数アルゴリズム」領域に入る.
次のように作成すると、私が作成したメソッドがサービスメソッドに含まれるため、エラーが発生します.Javaではメソッドにメソッドを含めることはできません.
<%
public int sum(int a, int b)
{
return a + b;
}
%>
コードブロックに感嘆符を付けると、「領域変数アルゴリズム」領域ではなく「メンバー関数、メンバー変数」領域にコードが挿入されます.
<%!
public int sum(int a, int b)
{
return a + b;
}
%>
コマンドブロック
初期設定用ページ 指示者はコードブロックではなく、指示コードブロックとも呼ばれる.
<%@ page language="java"contentType="text/html; charset=UTF-8 pageEncoding="UTF-8"%>
コードブロック4種の概要
  • <%>:汎用論理コードブロック
  • <%=%>:出力コードブロック
  • <%! %>: メンバー変数、メンバー関数定義コードブロック
  • <%@%>:コードブロック
  • を示す
    ※内蔵対象:Jasperはjspファイルをシーケンスコードに変換し、必要な変数やメソッドを自分で生成します.どのような方法があるかを知る必要があります.