JavaBean入門-概念と簡単な例


JavaBeanが作成されないのはJava開発者ではありません.
では、JavaBeanとは何でしょうか.
JavaBeanは、ある仕様に合致するJavaコンポーネント、すなわちJavaクラスです.
次の仕様を満たす必要があります.
1)ゼロパラメータのデフォルトコンストラクション関数が必要2)getメソッドとsetメソッドが必要であり、クラスのフィールドはgetとsetメソッドでなければならない   メソッドでアクセスします.   (getメソッドはパラメータなし、setメソッドはパラメータあり)
JavaBeanの例を見てみましょう.
一般的なWebログインにはユーザー名とパスワードが必要です.JavaBeanにユーザー名とパスワードを保存できます.
コードは次のとおりです.

package mytrain.formbean;

public class userBean {	
	
	private String name;
	private String password;
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
}

JavaBeanができたら、どうやってJSPページにアクセスしますか?
方法は2種類あります.
ダイレクトアクセスと
JSPタグアクセス       
(ただしラベルでアクセスすることをお勧めします)
1)直接アクセス
a)beanを宣言する
ページ上部にJavaBeanクラスをインポート:<%@page import="mytrain.formbean.userBean"%>JSPセグメントでクラスをインスタンス化:<%userBean user=new userBean();%>
b)beanへのアクセス
<% user.setXXX(aa); %> <%=user.getXXX();%>
2)ラベルアクセス
(推奨)
a)beanを宣言する
userBeanラベルの使用:
b)beanへのアクセス
setPropertyラベルで設定:getPropertyラベルで取得:
次に、完全なコードを見てみましょう.
ラベルアクセス:

<%@ page language="java" pageEncoding="GBK"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  	<title>  Bean  2</title>
    <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" />
  </head>
  
  <body>

  <form action="" method="post">
  <table>
  <tr>
  <td>
    <span class="blue10">   :</span>
  </td>
  <td>
    <input type="text" name="mUserName" size="20"><br>
  </td>
  </tr>
  <tr>
  <td>
    <span class="blue10">    :</span>
  </td>
  <td>
    <input type="password" name="mPassword" size="20"><br>
  </td>
  </tr>
  <tr>
  <td>
  </td>
  <td>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <input type=submit value="submit"/>
  </td>
  </tr>
  </table>
  </form>

  <jsp:useBean id="user" class="mytrain.formbean.userBean"/>
  <jsp:setProperty name="user"  property="name" param="mUserName"/>
  <jsp:setProperty name="user"  property="password" param="mPassword"/>
  
  <hr/>
  
     :<jsp:getProperty name="user" property="name"/>
  <br>
      :<jsp:getProperty name="user" property="password"/>
  
  </body>
</html>

ダイレクトアクセス:

<%@ page language="java" pageEncoding="GBK"%>
<%@ page import="mytrain.formbean.userBean" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>  Bean  3</title>
    <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" />
  </head>
  
  <body>
  
  <form action="" method="post">
  
  <table>
  <tr>
  <td>
    <span class="blue10">   :</span>
  </td>
  <td>
    <input type="text" name="mUserName" size="20"><br>
  </td>
  </tr>
  <tr>
  <td>
    <span class="blue10">    :</span>
  </td>
  <td>
    <input type="password" name="mPassword" size="20"><br>
  </td>
  </tr>
  <tr>
  <td>
  </td>
  <td>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <input type=submit value="submit"/>
  </td>
  </tr>
  </table>
  </form>
  
  
  <% 
    userBean user = new userBean();
    user.setName(request.getParameter("mUserName"));
    user.setPassword(request.getParameter("mPassword"));
  %>
  
  
  <hr/>
  
     :<%=user.getName()%>
  <br>
      :<%=user.getPassword()%>
  
  </body>
</html>