JSP から Beans のメソッドを呼び出す

現在の日時を表示します
  ・年: 2011 
  ・月: June 
  ・日: 17 
  ・時: 20 
  ・分: 57 

Java Beans で日付/曜日/時刻を取得する Class を作成します。
そして JSP から Beans のメソッドを呼び出してホームページに表示します。

前田稔の超初心者のプログラム入門

プログラムの作成

  1. プロジェクトのディクトリ構成です。
    C:\tomcat\webapps\ に beans\ のフォルダーを作成してプロジェクトを格納します。
    +:フォルダー, ・:ファイル, *:生成されるファイルです。
    +beans
        +WEB-INF
            +classes
                +mybean
                    ・todaybean.java
                    *todaybean.class
            +lib
        ・today.jsp
    
  2. Java Beans のソース todaybean.java です。
    Beans を組み込むときは package の設定が必要なようです。
    このプログラムは Java Applet で Beans を使う と同じものです。
    //★ 日付のプロパティを持つ Bean    前田 稔
    package mybean;
    
    import java.util.Calendar;
    import java.util.Date;
    import java.io.Serializable;
    
    public class todaybean implements Serializable
    {   private Calendar calendar;
    
        public Today()
        {   calendar = Calendar.getInstance();
            Date d = new Date();
            calendar.setTime(d);
        }
    
        public int getYear()
        {   return calendar.get(Calendar.YEAR);  }
    
        public String getMonth()
        {   int m = calendar.get(Calendar.MONTH);
            String[] months = new String []
            {   "January", "February", "March", "April", "May",
                "June", "July", "August", "September", "October",
                "November", "December"
            };
            return months[m];
        }
    
        public int getDate()
        {   return calendar.get(Calendar.DATE);  }
    
        public int getHour()
        {   return calendar.get(Calendar.HOUR_OF_DAY);  }
        
        public int getMinute()
        {   return calendar.get(Calendar.MINUTE);  }
    }
    
  3. Beans のメソッドを呼び出す todya.jsp です。
    jsp:getProperty name="today" property="year" で getYear() メソッドを呼び出します。
    Property を取得するときは getProperty を、設定するときは setProperty を使います。
    ・属性「name」は「<jsp:useBean>」で指定した「id」を指定します。
    ・属性「property」は Bean の中のどの変数に値を設定するかを指定します。
    ・属性「value」は設定する値を指定します。
    同様に getMonth(), getDate(), getHour(), getMinute() を呼び出して表示します。
    getメソッド名は「get+プロパティ」で、プロパティの先頭を大文字にするのが慣例です。
    <%@ page contentType="text/html; charset=Shift_JIS" %>
    <jsp:useBean id="today" scope="page" class="mybean.todaybean" />
    
    <html>
      <body>
        <h1>現在の日時を表示します</h1>
    
        <ul>
          <li>年: <jsp:getProperty name="today" property="year" />
          <li>月: <jsp:getProperty name="today" property="month" />
          <li>日: <jsp:getProperty name="today" property="date" />
          <li>時: <jsp:getProperty name="today" property="hour" />
          <li>分: <jsp:getProperty name="today" property="minute" />
        </ul>
    
      </body>
    </html>
    
  4. Command Prompt を起動して todaybean.class を作成して下さい。
    todaybean.java は package mybean; を設定して、次のフォルダに格納されています。
        +classes
            +mybean
                ・todaybean.java
        
    コンパイルの詳細は JSP Error Guide を参照して下さい。
  5. "C:\tomcat\bin\tomcat7w.exe" を選択して、管理者として実行から apache-tomcat を起動します。
    WWW ブラウザを起動して下記の URL を張り付けて下さい。
    http://localhost:8080/beans/today.jsp
    HTML の画面に日付/曜日/時刻が表示されたら完成です。
    現在の日時を表示します
      ・年: 2011 
      ・月: June 
      ・日: 17 
      ・時: 20 
      ・分: 57 
    

Java Game Program