top / index / prev / next / target / source
日記形式でつづる いがぴょんコラム ウェブページです。
blancoDbEE 1.6.4を正式版としてリリースします。RC3として公開していたものを、そのまま正式版扱いとします。
オープンソースで公開されている開発フレームワーク blanco Frameworkの R/Oマッピングを担うツールであるblancoDb Enterprise Edition 1.6.4 (Java版)を正式版としてリリースします。1.6.x系の最新安定版という位置づけになります。このリリースは先日より RC3として公開していたファイルを、そのまま正式版扱いとするものです。
1.4.1から 1.6.4までの主な変更点を示します。
デッドロックおよびタイムアウトへの対応
特定のSQLStateが発生した場合には対応する例外クラスでラッピングするように機能追加しました。
例外クラスとして DeadlockException、TimeoutExceptionを追加しました。 ※なお、当面のあいだ デッドロックおよびタイムアウトの動作確認は 対SQL Serverにおいてのみ実施されます。
Microsoft SQL Server 2005対応
各々の接続文字列は下記の通りです。微妙に異なるので注意が必要です。
様式の改善
SQL定義書に「SQL定義・詳細説明」を追加しました。
英語版のSQL定義書を追加しました。
その他の改善
ランタイムパッケージの共通化機能を追加。 ランタイムパッケージの出力先について個別に設定できるようになりました。
ジェネレーションギャップ・デザインパターンへの対応を強化しました。 データベースコネクション、ステートメント、結果セットをprotected化しました。
JavaDocを見直し、修正すべき点は修正しました。
prepareStatementの属性付きメソッドを削除。これはSQL定義書から与えられたもののみを使ってもらうためのものです。
Callerのexecuteメソッドについて戻り値がbooleanになるように変更しました。
例外処理の改善 生成後ソースコードにおける例外の変換について、これをメソッドとして共通化しました。
(ValueObject)toStringメソッドが新たに生成されるようになりました。
(plugin)右クリックメニューを除去。(機能が減りました)
(plugin)SQL定義一覧化処理の担当 ドキュメント一覧のための中間ファイル作成処理を処理の流れに追加しました。
(Antタスク) Antタスクの出力先フォルダについて、blanco をデフォルト値として設定しました。また、安全のために、blanco作業用フォルダ(blanco)が未設定の場合に、適切なメッセージを伴って異常終了するように変更しました。
不具合修正
SQL入力パラメータで項目番号のみ入力した際に、上の項目名が引き継がれて重複する項目名が生成されてしまうバグを修正しました。
単一表においてプライマリキーが無い表に対する UPDATEとDELETEを生成しないように修正しました。
単一表において、BINARYおよびラージTEXTに対する単一表アクセス自動生成について、「一行制約」をOFFにするように仕様を変更しました。 これは、getInputStreamやgetReaderが getSingleRow内のnextメソッドの2度呼び出しによって閉じてしまうという個々のJDBCドライバの実装上の問題に対応するための変更となります。また、これらの型については、Simpleの単一表自動生成の項目列挙の際の扱いを調整して、出力されるべきでない場合には生成されないように修正しました。
マッピングにおいて、java.sql.Types.VARBINARY、case java.sql.Types.BOOLEAN の記載が抜けていた箇所があったので、これを修正しました。
メタ情報収集時のコネクションについて、自動コミットがONのままになっていたので、これをOFF設定へと修正しました。
PostgreSQL 8.1 (8.1.405)において、表が一つも無い場合に単一表の情報収集時にnullポインタ例外が発生する不具合を修正しました。
ひとつも列が処理されなかった場合の処理中断を整理しました。
検索型SQL文の試し打ちのために従来はStringに対して 従来は "" をセットしていたのを、nullへと変更しました。 これは SQL Server 2005の uniqueidentifier列の場合には Stringでセットすると(バイナリへの)変換エラーが発生してしまうのを回避するためです。なお、文字列以外については、0などの値を埋めた上で試し打ちしています。