Profile cover photo
Profile photo
Iwao AVE!
45 followers
45 followers
About
Posts

Post has attachment
以下、MyBatis-Migrations 3.3.2 の変更点です。

### 新機能

- コマンドラインオプション '--quiet' を追加しました。実行される SQL が出力されなくなります。 #92
- コマンドラインオプション '--color' を追加しました。成功メッセージは緑、失敗は赤で出力されます。 #104
- DELIMITER 構文で複数の文字をデリミタとして指定できるようになりました。 #96
- up/down フックが 'version' と 'pending' コマンドにも適用されるようになりました。 #81
- 環境設定 'ignore_warnings' が追加されました。 #85
- カスタムの FileMigrationsLoader を使うことができるようになりました。 #107
- サイズの大きなスクリプトを読み込む際のメモリ使用量をそれなりに減らしました。 #101

新たに追加された 'ignore_warnings' の初期値は 'true' で、DB から SQL 警告が返されても migration は続行されます。
3.3.1 のように SQL 警告発生時に migration を中止させたい場合は 'false' を指定する必要があります。
Add a comment...

Post has attachment
以下、MyBatis 3.4.6 の変更点です。

### 新機能

- ストアドプロシージャ実行時に CURSOR 型の OUT 引数に対して ResultHandler が適用されるようになりました。 #493
- include で読み込まれた要素の属性値に含まれている変数も置換されるようになりました。 #1069
- BatchExecutor は各ステートメントを実行直後にクローズするようになりました。 #1110
- SQL Provider で static メソッドを指定できるようになりました。 #1131
- SQL Provider で指定されたメソッドから CharSequene を返すことができるようになりました。 #1134
- XML mapper 読込時にエラーが発生した場合、エラーメッセージにリソースのパスが含まれるようになりました。 #1172

### 不具合修正

- HashMap に対して type handler が登録されていると ClassCastException が発生する可能性がある。 #1089
- TypeHandlerRegistry#hasTypeHandler() を呼び出した後に type handler を追加することができない。 #1177
- キャッシュされたオブジェクトをシリアライズし、さらにデシリアライズすると NullPointerException が発生する。 #1084
- エラー出力に 'Two methods with same method signature but not providing classes assignable?' というメッセージが出力される。 #929

3.4.5 からの移行における既知の問題はありません。
変更点のリストはこちらです。
https://github.com/mybatis/mybatis-3/milestone/19?closed=1

3.4.6 は Java 6 をサポートする最後のバージョンとなる予定です。
Add a comment...

Post has attachment
以下、MyBatis 3.4.5 の変更点です。

### 新機能

- デフォルトの enum 用 Type Handler を変更できるようになりました。 #971
- SqlProvider 内で mapper method とそのインターフェイスタイプを取得できるようになりました。 #1055
- SqlProvider が返す文字列で configuration properties を使用できるようになりました。 #1061
- JSR-310 (Java Date and Time API) 用の type handler が標準で使用できるようになりました。 #974

### 不具合修正

- enum の共通インターフェイスに対して登録した TypeHandler が正しく適用されない。 #976
- ユーザーがセットしたプロパティの値が lazy loading によって上書きされてしまう。 #988
- foreach タグの仮変数がループ外部のコンテクストの変数に影響を与える。 #966
- 一部の引数名(size など)が原因で ClassCastException がスローされる。 #1031
- 複数の ResultSet が全て処理されない場合がある。 #1036
- PostgreSQL を使用していて、グローバル設定で `useGeneratedKeys` が有効になっていると ExecutorException がスローされる。 #902

3.4.4 からの移行に関する既知の問題はありません。
変更点のリストはこちらです。
https://github.com/mybatis/mybatis-3/milestone/18?closed=1
Add a comment...

以下、MyBatis 3.4.4 の変更点です。

新バージョンは 3.4.3 になるはずでしたが、Maven Central に送った JAR にミスが見つかったので急遽 3.4.4 がリリースされました。

### 新機能

- enum の共通インターフェイスに対して TypeHandler を設定できるようになりました。登録の手間が減ります。 #947
- Jdbc3KeyGenerator と NoKeyGenerator のインスタンスを再利用することでパフォーマンスが向上しています。 #882
- SQL クラスを使って JOIN を伴う UPDATE 文を構築することができるようになりました。 #903

### 不具合修正

- 親の Mapper に対して定義されたステートメントが正しく検出されない場合がある。 #481
- Mapper インターフェイスが public でない場合、default メソッドが期待通りに動作しない。 #905
- foreignColumns に複数の列を設定するとエラーが発生する。 #526
- LanguageDriver の登録ロジックの不具合修正。 #914
- boolean 型のプロパティ X に対して isX() と getX() の両方定義されていると getter の検出に失敗する。 #906
- 意図しない auto-mapping によって明示的にマッピングされたプロパティの値が上書きされてしまう場合がある。 #895
- ネストされた result map がプリミティブ型の配列を含む場合、id 要素が指定されていないとメモリを大量に消費してしまう。 #927

3.4.2 からの移行に関する既知の問題はありません。
変更点のリストはこちらです。
https://github.com/mybatis/mybatis-3/milestone/16?closed=1
Add a comment...

MyBatis 3.4.2, MyBatis-Spring 1.3.1, MyBatis-Spring-Boot-Starter 1.2.0 の更新内容です。

## MyBats 3.4.2

### 機能追加

- すべての列が null である行が返された場合、返り値は null になるのがデフォルトの動作ですが、設定で returnInstanceForEmptyRow に true を設定することで空のオブジェクトを返すように動作を変更できるようになりました。
- Mapper インターフェイスに default method を定義できるようになりました。
- 独自クラスに対する type handler が未登録の場合、その親クラスに対して登録されている type handler が(もしあれば)適用されるようになりました。 #859
- 独自の Cache 実装を使用する場合、 `@CacheNamespace` の properties 属性で任意のプロパティを設定できるようになりました。 #841
- `@CacheNamespace` の name 属性でキャッシュの namespace を指定できるようになりました。 #842
- 独自のキャッシュ実装でプロパティ設定後に呼び出される初期化用のメソッドを定義できるようになりました。 #816
- 変数を参照するプレースホルダーの記述でデフォルト値を指定できるようになりました。 #852
- TypeHandlers-JSR310 1.0.2 で追加された type handler が自動検出されます。 #878

### 不具合修正

- resultMap で定義されていないコンストラクタを使って値がマッピングされた場合、返り値が null になってしまう問題が修正されました。 #830
- XML 設定ファイルの `<setting />` 要素で変数の参照が正しく解決されない問題が修正されました。 #723
- 配列型の引数をインデックス付きで参照した場合に値が null になってしまう問題が修正されました。 #747
- 起動時の XML mapper ファイル読込処理のメモリ使用量が少なくなりました。3.3.0-3.4.1 のバージョンでは CI 環境など繰り返し初期化処理が実行されるユースケースで Full GC 頻発、OutOfMemoryError などの問題が生じる可能性がありました。 #867
- POOLED データソースで接続リークが発生する問題が修正されました。 #748
- 遅延読込が指定されたプロパティの setter 呼び出しによって遅延読込が実行されてしまう問題が修正されました。 #749
- 上限付きワイルドカード型のクラスに結果をマッピングする際に ReflectionException が発生する可能性があったのを修正しました。 #807
- 総称型クラスで setter のみが定義されているプロパティに結果を設定する際に ReflectionException が発生する問題を修正しました。 #755

それと、このバージョンから aggressiveLazyLoading のデフォルト値が true から false に変更されています。aggressiveLazyLoading=true だと eager loading と変わらないケースが多いためです。

チケットのリストはこちらです。
https://github.com/mybatis/mybatis-3/milestone/15?closed=1


## MyBatis-Spring 1.3.1

- MapperScannerConfigurer のプロパティで指定した変数参照が正しく解決されない問題が修正されました。 #144

チケットリストはこちら。
https://github.com/mybatis/spring/milestone/7?closed=1

## MyBatis-Spring-Boot-Starter 1.2.0

ちょっと追いきれていませんが、Spring-Boot の最新バージョンへの対応がメインのようです。 

https://github.com/mybatis/spring-boot-starter/milestone/8?closed=1

Spring の要求バージョンが 4.3 以降となっています。
Spring Initializer (https://start.spring.io/) も最新版に対応済みとのことです。

Add a comment...

MyBatis Generator 1.3.5, MyBatis-Ignite 1.0.3, MyBatis-TypeHandlers-JSR310 1.0.2 の更新内容です。

## MyBats Generator 1.3.5

- `IS_AUTOINCREMENT`, `IS_GENERATEDCOLUMN` をサポートしていない JDBC ドライバーでエラーが発生する問題が修正されています。 #136
- 最近の MySQL JDBC ドライバーで 'Column name pattern can not be NULL or empty.' というエラーが発生する問題が修正されています。 #146 #149
- FluentBuilderMethodsPlugin が追加されました。 #142

## MyBatis Ignite 1.0.3

- Ignite のバージョン更新(1.7.0 → 1.8.0)

## MyBatis TypeHandlers-JSR310 1.0.2

- YearMonthTypeHandler, JapaneseDateTypeHandler が追加されました。 #12 #15
- OSGi 環境によっては Type handler が認識されない問題が修正されました。 #18
Add a comment...

滞っていた #MyBatis 関連の更新情報を少しずつポストします。

## MyBatipse (Eclipse plugin for MyBatis)

https://marketplace.eclipse.org/content/mybatipse

### 1.0.23

- ステートメント(select, insert, etc.)や Result map の ID を変更したとき、これらの ID の参照を同時に更新するリファクタリング機能を追加しました。
- プロジェクトの Java コンパイラオプションで 'Store information about method parameters (usable via reflection)' が有効の場合は、引数の補完候補に宣言されている引数名を含めるようにしました。この設定は javac の "-parameters" オプションに相当します。
- `@ResultMap` で指定された Result map ID を検証するようにしました。
- `@One`, `@Many` の select 属性で指定された ID を検証するようにしました。

### 1.0.24

- `@ResultMap` の ID がハイパーリンクになりました。
- `@One`, `@Many` の select 属性がハイパーリンクになりました。
- XML の mapper / config ファイルで jdbcType の値が補完できるようになりました。
- `@Results` で定義されている Result map を XML ファイルの `<resultMap />` 要素に移動する Quick Assist を追加しました。
- Type alias の設定で、package を指定する際にワイルドカードを指定できるようになりました。

1.0.24 は Eclipse 4.4 未満で動作する最後のバージョンとなる予定です。
Add a comment...

Released MyBatipse (Eclipse plugin adding support for MyBatis) 1.0.22.

Only one minor bug fix this time.

Enjoy!

https://github.com/mybatis/mybatipse/issues?q=is%3Aissue+is%3Aclosed+milestone%3A1.0.22
Add a comment...

#MyBatis 関連のリリース情報です。

- MyBatis Generator 1.3.4
- MyBatis Ignite 1.0.2
- MyBatis Guice 3.8

### MyBatis Generator 1.3.4

機能追加:
- columnOverride 要素に GENERATED ALWAYS として定義された列を示す isGeneratedAlways 属性が追加されました。 生成される INSERT, UPDATE 文から除外されます。 #104
- ConnectionFactory をカスタマイズできるようになりました。 #106
- 自動生成されるコメントの日付書式をカスタマイズできるようになりました。 #108
- 多くの列の内一部のみを生成対象にしたいケースでの定義を簡単にするため ignoreColumnsByRegex という要素が追加されました。 #118
- 生成される Mapper, SQLProvider の名前をテーブルごとにカスタマイズできるようになりました。 #119
- Eclipse で Generator を外部ツールとして実行できるようになりました(詳細は Eclipse のヘルプ参照)。従来のコンテクストメニューから実行する方法は非推奨となります。 #120 #133
- countByExample メソッドの返り値が int から long に変更されました。 #125
- 自動される JavaDoc タグが @mbggenerated から @mbg.generated に変更されました。 #130

不具合修正:
- Eclipse プラグインで繰り返し生成処理を実行した場合に結果が微妙に変わる問題が修正されています。 #129
- #109 #116 はコーナーケースです。たぶん。

MyBatis Generator Eclipse プラグインは Marketplace にも登録されたので、より簡単にインストールできるようになりました。
https://marketplace.eclipse.org/content/mybatis-generator

GitHub のリリースページはこちらです。
https://github.com/mybatis/generator/releases/tag/mybatis-generator-1.3.4

### MyBatis Ignite 1.0.2

- Apache Ignite のバージョンを 1.7.0 に更新。
- Ignite インスタンスが既に動作している場合は新しいインスタンスを起動しないように修正。

GitHub のリリースページはこちらです。
https://github.com/mybatis/ignite-cache/releases/tag/mybatis-ignite-1.0.2

### MyBatis Guice 3.8

- Core 側での Configuration オプションの変更に対応できるようになりました。 #42, 60, 79
- Druid (https://github.com/alibaba/druid) のサポートが追加されました。 #57
- 総称型の TypeHandler を複数のクラスに適用できるようになった …で良いのかな。 #64
- @Transactional アノテーションが合成メソッドに適用されない問題を修正しました。 #71
- ひとつの TypeHandler を複数のモジュールに追加した場合に CreationException が発生する問題を修正しました。 #76

GitHub のリリースページはこちらです。
https://github.com/mybatis/guice/releases/tag/mybatis-guice-3.8
Add a comment...

MyBatis 3.4.1 がリリースされました。

機能追加

- Java 8 の '-parameters' コンパイラーオプション有効時に引数を実名で参照できるようになった。 #549
- mybatis-typehandlers-jsr310 1.0.1 で追加された Year/MonthTypeHandler が自動検出されるようになった。 #646
- オブジェクトの配列を返す @Select を定義できるようになった(プリミティブ型の配列は対象外)。 #669
- XML の設定ファイルで reflectorFactory を指定できるようになった。 #657

不具合修正

- resultMap を循環参照しているケースで意図しない値が設定される。 #215
- 引数に @Param 指定のある SELECT を association/collection の select 属性で指定すると例外が発生する。 #649
- IBM WAS (WebSphere Application Server) 8.5.5.9 で起動時のアノテーションスキャン時に RuntimeException が発生する。 #706
- Cursor を返す @Select ステートメントでエラーが発生する。 #661
- Cursor を返すステートメントで RowBounds が指定できない。 #667
- Kylin の JDBC ドライバーで NullPointerException が発生する。

旧バージョンから移行する場合の注意点

- 引数を参照する箇所でインデックスを指定する旧書式 #{0}, #{1}, ... を使っていて、尚且つ Java 8 の -parameters 付きでコンパイルしている場合は useActualParamName="false" を設定する必要があります。

全チケットのリストは https://github.com/mybatis/mybatis-3/issues?utf8=%E2%9C%93&q=milestone%3A3.4.1 です。
Add a comment...
Wait while more posts are being loaded