|
|
WebOTX Manual V11.1 (第6版) 目次を表示 |
// JDBCのインタフェース import java.sql.*; import javax.sql.DataSource; // JNDIのインタフェース import javax.naming.*; // JDBCデータソース固有のインタフェース import jp.co.nec.WebOTX.WODataSource; import com.nec.wojdbc.WOConnectionWrapper;
InitialContext ic;
DataSource ds;
public void method_init ()
{
try {
// JDBC データソースの取得
ic = new InitialContext();
ds = (DataSource)ic.lookup("jdbc/Oracle");
} catch(Exception ex) {
ex.printStackTrace();
}
}
public void method_1 ()
{
Connection conn = null;
try {
// JDBC コネクションの取得
conn = ds.getConnection();
// SQL 命令の実行
} catch(Exception ex) {
ex.printStackTrace();
} finally {
if ( conn != null ) {
try {
// JDBC コネクションのクローズ
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Memo
JDBCデータソースのプロパティの詳細は、
[ リファレンス
> 設定
> JDBCデータソース ]
を参照してください。
DataSource ds;
public void method_2 ()
{
Connection conn = null;
try {
// JDBC コネクションの取得
conn = ds.getConnection();
// AutoCommit モードの変更
conn.setAutoCommit(false);
// SQL命令の実行
// 更新内容のコミット
conn.commit();
} catch(Exception ex) {
if ( conn != null ) {
try {
// 更新内容のロールバック
conn.rollback();
} catch (Exception e) {}
}
ex.printStackTrace();
} finally {
if ( conn != null ) {
try{
// JDBC コネクションのクローズ
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Memo
JDBCデータソースのプロパティの詳細は、
[ リファレンス
> 設定
> JDBCデータソース ]
を参照してください。
DataSource ds;
public void method_3 ()
{
Connection conn1 = null;
try {
// JDBC コネクションの取得(1)
conn1 = ds.getConnection();
// EJBのメソッド呼び出し
method_4();
// SQL命令の実行
} catch(Exception ex) {
ex.printStackTrace();
} finally{
if ( conn1 != null ) {
try{
// JDBC コネクションのクローズ(1)
conn1.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
public void method_4 ()
{
Connection conn2 = null;
try {
// JDBC コネクションの取得(2)
conn2 = ds.getConnection();
// SQL命令の実行
} catch(Exception ex) {
ex.printStackTrace();
} finally {
if ( conn2 != null ) {
try{
// JDBC コネクションのクローズ(2)
conn2.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Memo
JDBCデータソースのプロパティの詳細は、
[ リファレンス
> 設定
> JDBCデータソース ]
を参照してください。
DataSource ds;
public void method_5 ()
{
Connection conn = null;
try {
// JDBCドライバベンダのJDBCコネクション
Connection realconn = null;
// JDBC コネクションの取得
conn = ds.getConnection();
// JDBCドライバベンダのJDBCコネクションの取得
if (conn instanceof com.nec.wojdbc.WOConnectionWrapper) {
WOConnectionWrapper wocon = (com.nec.wojdbc.WOConnectionWrapper)conn;
realconn = wocon.getRealConnection();
}
else {
realconn = conn;
}
// JDBC ドライバベンダ固有のAPI呼び出し
// try{
// String tmzone = ((oracle.jdbc.OracleConnection)realconn).getSessionTimeZone();
// System.out.println("Session TimeZone: " + tmzone );
// } catch(Throwable t ){
// System.out.println("getSessionTimeZone() not supported. :" + t );
// }
// SQL命令の実行
} catch(Exception ex) {
ex.printStackTrace();
} finally {
if ( conn != null ) {
try {
// JDBC コネクションのクローズ
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Memo
JDBCデータソースのプロパティの詳細は、
[ リファレンス
> 設定
> JDBCデータソース ]
を参照してください。
DataSource ds;
public void method_5 ()
{
Connection conn = null;
Statement stmt = null;
try {
// JDBC ドライバベンダのJDBCコネクション
oracle.jdbc.OracleConnection realconn = null;
// JDBC コネクションの取得
conn = ds.getConnection();
// JDBC ドライバベンダのJDBCコネクションの取得
Class cl = Class.forName(“oracle.jdbc.OracleConnection”);
if (conn.isWrapperFor(cl)) {
realconn = conn.unwrap(cl);
}
// JDBC ドライバベンダ固有のAPI呼び出し
// try{
// String tmzone = realconn.getSessionTimeZone();
// System.out.println("Session TimeZone: " + tmzone );
// } catch(Throwable t ){
// System.out.println("getSessionTimeZone() not supported. :" + t );
// }
// JDBC ドライバベンダのJDBCステートメント
oracle.jdbc.driver.OracleStatement realstmt = null;
// JDBC ステートメントの取得
stmt = conn.createStatement();
// JDBC ドライバベンダのJDBCステートメントの取得
cl = Class.forName(“oracle.jdbc.driver.OracleStatement”);
if (stmt.isWrapperFor(cl)) {
realstmt = stmt.unwrap(cl);
}
// SQL命令の実行
} catch(Exception ex) {
ex.printStackTrace();
} finally {
if ( stmt != null ) {
try {
// JDBC ステートメントのクローズ
stmt.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if ( conn != null ) {
try {
// JDBC コネクションのクローズ
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
DataSource ds;
public void method_5 ()
{
Connection conn = null;
try {
// WODataSource クラスインスタンスの作成
WODataSource wods = new WODataSource();
// プロパティ値の取得
String filename = System.getProperty("MY_PROPERTY_FILE_NAME");
java.util.Properties props = new java.util.Properties();
java.io.FileInputStream fin = new java.io.FileInputStream(filename);
try {
props.load(fin);
} finally {
if (fin != null) fin.close();
}
// プロパティ値の設定
wods.setDataSourceName(props.getProperty("dataSourceName"));
wods.setDataSourceType(props.getProperty("dataSourceType"));
wods.setUserName(props.getProperty("userName"));
wods.setPassword(props.getProperty("password"));
wods.setUseJTA(Boolean.valueOf(props.getProperty("useJTA")).booleanValue());
ds = wods;
// JDBCコネクションの取得
conn = ds.getConnection();
// SQL命令の実行
} catch(Exception ex) {
ex.printStackTrace();
} finally {
if ( conn != null ) {
try {
// JDBC コネクションのクローズ
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Memo
JDBCデータソースのプロパティの詳細は、
[ リファレンス
> 設定
> JDBCデータソース ]
を参照してください。