JSPでsetpropertyを使用するにはどうすればよいですか?

藏色散人
リリース: 2020-09-19 11:30:20
オリジナル
5395 人が閲覧しました

jsp の「setproperty」は、インスタンス化された Bean オブジェクトのプロパティを設定するために使用されます。その構文は、「」のようになります。 。

JSPでsetpropertyを使用するにはどうすればよいですか?

jsp タグ jsp:setProperty の使用法


はインスタンスの設定に使用されますBean オブジェクトのプロパティ

最初のフォーム:

<jps:setProperty name = "JavaBean实例名"  property = "*"/>
ログイン後にコピー

このフォームは、Bean プロパティを設定するためのショートカットです。Bean 内のプロパティの名前とタイプは、次のようにする必要があります。リクエストオブジェクトのパラメータ名と同じです。フォームで渡されるデータ型はすべて String 型であるため、Jsp の内部メカニズムはこれらのパラメータを対応する型の Bean 属性に変換します。

property = "*" は、名前が Bean プロパティ名と一致するすべてのリクエスト パラメータが、対応するプロパティ セット メソッドに渡されることを意味します。

2 番目の形式:

<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" />
ログイン後にコピー

リクエスト オブジェクトのパラメータ値を使用して、Bean の属性値を指定します。この構文では、property は Bean のプロパティ名を指定し、Bean プロパティとリクエスト パラメーターの名前は同じである必要があります。つまり、Bean に setUserName(String userName) メソッドがある場合、propertyName の値は「userName」になります。この形式はより柔軟で、Bean 内のプロパティに選択的に値を割り当てることができます

3 番目の形式:

<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" value = "BeanValue"/>
ログイン後にコピー

value は、Bean 属性の値を指定するために使用されます。文字列データは、ターゲット クラスの標準の valueOf メソッドを通じて、数値、ブール値、ブール値、バイト、バイト、文字、および文字に自動的に変換されます。例えば、boolean および Boolean 型の属性値(「true」など)は Boolean.valueOf で変換され、int および Integer 型の属性値(「42」など)は Integer.valueOf で変換されます。

4 番目の形式:

<jsp:setProperty name = "JavaBean实例名" 
     property = "propertyName" param = "request对象中的参数名"
/>
ログイン後にコピー

param は、Bean 属性の値として使用されるリクエスト パラメータを指定します。 Bean プロパティとリクエスト パラメータの名前は異なっていてもかまいません。現在のリクエストにパラメータがない場合は何も行われず、システムは Bean プロパティの set メソッドに null を渡しません。したがって、Bean にデフォルトのプロパティ値自体を提供させ、リクエスト パラメータで明示的に新しい値が指定されている場合にのみデフォルトのプロパティ値を変更することができます。

たとえば、次のコード スニペットは、numItems リクエスト パラメータがある場合は、numberOfItems 属性の値をリクエスト パラメータ numItems の値に設定し、それ以外の場合は何もしないことを意味します。

<jsp:setProperty name="orderBean" property="numberOfItems" param="numItems" />
ログイン後にコピー

以下は簡単な例です:

//sampleBean.java
 
package MyJavaBeanPackage;
 
public class SampleBean2
{
 private String id;
 private String age;
 private String name;
 private String sex;
 private String addr;
public SampleBean2()
 {
 }
 public String getName()
 {
  return name;
 }
 public void setName(String name)
 {
  this.name = name;
 }
 public String getSex()
 {
  return sex;
 }
 public void setSex(String sex)
 {
  this.sex = sex;
 }
 
 public void setId(String id)
 {
  this.id = id;
 }
 public void setAge(String age)
 {
  this.age = age;
 }
 public String getId()
 {
  return id;
 }
 public String getAge()
 {
  return age;
 }
 public String getAddr()
 {
  return addr;
 }
 public void setAddr(String addr)
 {
  this.addr = addr;
 }
}
 
//SampleBean.html
<html>
  <head>
    <title>使用<jsp:getProperty>和<jsp:setProperty>标记</title>
  </head>
  
  <body>
   <form name = "form1" action = "Sample2.jsp" method = "post">
    <p align = "center">编号
     <input type = "text" name = "id">
    </p>
    <p align = "center">姓名
     <input type = "text" name = "name">
    </p>
    <p align = "center">性别
     <select name = "TheSex" id = "sex">
      <option value = "男" selected>男</option>
      <option value = "女">女</option>
       </select>
     </p>
     <p align = "center">年龄
      <input type = "text" name = "TheAge">
     </p>
     <p align = "center">
      <input type = "submit" value = "提交">
      <input type = "reset" value = "重置">
     </p>
    </form>
   </body>
 </html>
ログイン後にコピー
//SampleBean.jsp
<%@ page
 language="java" 
 contentType = "text/html;charset = GBK"
%>
 
<jsp:useBean id = "sampleBean2" class = "MyJavaBeanPackage.SampleBean2"/> 
<html>
 <head>
  <title>在JavaBean中存放数据</title>
 </head>
 <body>
  <%--方法一
   <jsp:setProperty name = "sampleBean2" property = "*" />
  --%>
  <%-- 方法二 --%>
  <jsp:setProperty name = "sampleBean2" property = "id"/>
  <jsp:setProperty name = "sampleBean2" property = "name"/>
  <%--方法三 --%>
  <jsp:setProperty name = "sampleBean2" property = "addr" value = "洛阳师范学院"/>
  <%-- 方法四 bean属性的名字可以与request参数不同--%>
  <jsp:setProperty name = "sampleBean2" property = "sex" param = "TheSex"/>
  <jsp:setProperty name = "sampleBean2" property = "age" param = "TheAge"/>
  <center>
   编号:<jsp:getProperty name = "sampleBean2" property = "id"/><br>
   姓名:<jsp:getProperty name = "sampleBean2" property = "name"/><br>
   性别:<jsp:getProperty name = "sampleBean2" property = "sex"/><br> 
   年龄:<jsp:getProperty name = "sampleBean2" property = "age"/><br>
   住址:<jsp:getProperty name = "sampleBean2" property = "addr"/><br>
  </center>
 </body>
</html>
ログイン後にコピー



#98

以上がJSPでsetpropertyを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート