ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド

13.6.6 ejbFind<METHOD>メソッドの記述

ejbFind<METHOD>メソッドは、プライマリキーを返却するメソッドです。複数のプライマリキーを返却できます。

Entity Beanを呼び出すEJBアプリケーションがfind<METHOD>メソッドを呼び出すと、コンテナはfind<METHOD>メソッドに対応するejbFind<METHOD>メソッドを呼び出します。

記述する処理の概要

ejbFind<METHOD>メソッドには、以下の処理を記述します。引数には、任意の検索キーを指定します。

また、複数のプライマリキーを返却するメソッドで検索結果が0件の場合、要素が0個のEnumerationやCollectionを返却するようにしてください。

ejbFind<METHOD>メソッドの規約

ejbFind<METHOD>メソッドは以下の規約を満たしていなければなりません。

記述例

  public Enumeration ejbFindSampleBigCode(Integer bigcode)
          throws javax.ejb.FinderException, javax.ejb.EJBException
  {
      Connection connection = null;
      PreparedStatement psSelect = null;
      ResultSet rs = null;
      int rows = 0;
      SampleBeanPrimaryKey pk = null;
      Vector v = new Vector();
      try
      {
          // プライマリキーの検索
          connection = dataSource.getConnection();
          psSelect = connection.prepareStatement("SELECT ID FROM SAMPLESCM.SAMPLETBL WHERE ID > ?");
          psSelect.setObject(1,bigcode);
          rs = psSelect.executeQuery();
          while(rs.next())
          {
              rows++;
              // プライマリキーオブジェクトの作成
              pk = new SampleBeanPrimaryKey();
              pk.code = new Integer(rs.getInt(1));
              v.addElement(pk);
          }
      }
      catch(SQLException e)
      {
          throw new EJBException(e.getMessage());
      }
      finally
      {
          try
          {
              if (rs != null)
                  rs.close();
              if (psSelect != null)
                  psSelect.close();
              if (connection != null)
                  connection.close();
          }
          catch(Exception e) {}
      }

      return v.elements();
  }