Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド |
目次 索引 |
第3部 EJB編 | > 第13章 Entity Beanの実装 | > 13.6 BMPのEnterprise Beanクラスの作成 |
コンテナがデータベースにデータを追加するときに呼び出すメソッドです。
Entity Beanを呼び出すEJBアプリケーションがcreateメソッドを呼び出すと、コンテナはcreateメソッドに対応するejbCreateメソッドを呼び出します。ejbPostCreateメソッドは、ejbCreateメソッドが呼び出された後コンテナによって呼び出されます。
一般的に、ejbCreateメソッドには、以下の処理を記述します。
ejbPostCreateメソッドには通常、処理を記述する必要はありません。
ejbCreateメソッドは以下の規約を満たしていなければなりません。
ejbPostCreateメソッドは以下の規約を満たしていなければなりません。
public SampleBeanPrimaryKey ejbCreate(Integer codeValue, String nameValue, String descValue) throws javax.ejb.CreateException, javax.ejb.EJBException
{ // 永続化フィールドの初期化 code = codeValue; name = nameValue; desc = descValue; Connection connection = null; PreparedStatement psInsert = null; int rows = 0; try { // データベースへレコードを追加する connection = dataSource.getConnection(); psInsert = connection.prepareStatement( "INSERT INTO SAMPLESCM.SAMPLETBL(ID,NAME,DESC) VALUES(?,?,?)"); psInsert.setObject(1,code); psInsert.setString(2,name); psInsert.setString(3,desc); rows = psInsert.executeUpdate(); } catch(SQLException e) { throw new EJBException(e.getMessage()); } finally { try { if (psInsert != null) psInsert.close(); if (connection != null) connection.close(); } catch(Exception e) {} } // プライマリキーオブジェクトの作成 SampleBeanPrimaryKey pk = new SampleBeanPrimaryKey(); pk.code = code; return pk; } public void ejbPostCreate(Integer codeValue, String nameValue, String descValue) throws javax.ejb.CreateException, javax.ejb.EJBException { }
目次 索引 |