JAVA開発メモ
Commons-Transaction
 

[リロード]   [新規|編集|差分|添付]   [トップ|一覧|単語検索|最終更新|バックアップ|ヘルプ]

サイトメニュー
最新の20件
2018-08-012018-02-222016-12-222015-06-242013-07-032013-02-262011-01-122010-06-082010-03-092010-03-032009-12-302009-10-302009-02-252009-02-242009-02-112008-09-242008-09-232008-09-16


Jakarta Commons Transaction

Jakarta Commons Transactionは、javaによるファイルまたはコレクション入出力のトランザクション処理を提供します。

org.apache.commons.transaction.file.FileResourceManager?クラス

ファイルアクセスのトランザクション処理を管理します。

FileResourceManager?の生成

  • コンストラクタ
 FileResourceManager(String storeDir,       // 処理対象ディレクトリ
                     String workDir,        // 一時保存用ディレクトリ
                     boolean urlEncodePath, // リソースのURLエンコード化
                     LoggerFacade logger)   // ロガー

  • 起動までのサンプル
 // ロガーの生成
 PrintWriter printWriter = new PrintWriter(System.out, true);
 String name = "test";
 boolean debug = true;
 LoggerFacade log = new PrintWriterLogger(printWriter, name, debug);
 
 // FileResourceManagerの生成
 FileResourceManager manager =
   new FileResourceManager("C:\\tmp\\storeDir", "C:\\tmp\\workDir", false, log);
 
 // FileResourceManagerの起動
 manager.start();

トランザクションの開始・終了

 // トランザクションIDの生成
 String txId = manager.generatedUniqueTxId();
 // トランザクションの開始
 manager.startTransaction(txId);
 
 // トランザクションの終了
 manager.commitTransaction(txId);

  • 処理を無効にする場合はロールバック
 manager.rollbackTransaction(txId);

ファイルリソース処理のサンプル

 // ファイル名
 String resourceId = "test/test.txt";
 
 // ファイル生成
 manager.createResource(txId, resourceId);
 
 // ファイル書き込み
 OutputStream out = manager.writeResource(txId, resourceId);
 PrintWriter writer = new PrintWriter(out, true);
 writer.println("コミット");
 
 // ファイル読み込み
 InputStream in = manager.readResource(txId, resourceId);
 BufferedReader reader = new BufferedReader(new InputStreamReader(in));
 System.out.println(reader.readLine());
 
 // ファイル削除
 manager.deleteResource(txId, resourceId);



リロード   新規 編集 差分   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Last-modified: Wed, 03 Sep 2008 19:27:03 JST (4031d)
Link: FrontPage(1545d)

Modified by MT22(Moriwaki Takashi)

"PukiWiki" 1.3.7 Copyright © 2001,2002,2003 PukiWiki Developers Team. License is GNU/GPL.
Based on "PukiWiki" 1.3 by sng
Powered by PHP 5.3.29

HTML convert time to 0.016 sec.