移行 1.1.0 to 1.1.0-sp4
お約束の注意点
- 古いバージョンの削除
- 古いバージョンのDBFluteランタイム(JAR)が[web-INF/lib]の下などに残らないように
- タスクを実行し忘れないように
- Generateタスクだけでなく、(外だしSQLがある場合は)Sql2Entityタスクも実行
環境上の注意点
なんとかDefinitionMap.dfprop の Definition
まず、互換性は保たれているので、無理に移行する必要はありません。
幾つかのdfpropファイルの名前が変わりました。
- documentDefinitionMap.dfprop to documentMap.dfprop
- includeQueryMap.dfprop to conditionBeanMap.dfprop
- optimisticLockDefinitionMap.dfprop to optimisticLockMap.dfprop
- outsideSqlDefinitionMap.dfprop to outsideSqlMap.dfprop
- refreshDefinitionMap.dfprop to refreshMap.dfprop
- replaceSchemaDefinitionMap.dfprop to replaceSchemaMap.dfprop
- sequenceDefinitionMap.dfprop to sequenceMap.dfprop
sp4以降では、ファイルをrenameしてもそのまま動作しますので、よければ試してみてください。
いくつか littleAdjustment に
refreshMap.dfprop や optimisticLockMap は、同じ内容を littleAdjustmentMap.dfprop で指定できるようになっています。dfprop配下をスッキリさせるため、小さなdfpropは統合しています。
e.g. refreshMap と optimisticLockMap @littleAdjustmentMap.dfprop
# /- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# o refreshMap: (NotRequired - Default map:{projectName=$$AutoDetect$$ ; requestUrl=http://localhost:8386/})
# If you use synchronizer and specify this property, no need to refresh(F5) your eclipse project.
# The projectName can be set plural names by slash '/'. e.g. sea/land
#
#; refreshMap = map:{
# ; projectName = $$AutoDetect$$
# ; requestUrl = http://localhost:8386/
#}
# - - - - - - - - - -/
# /- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# o optimisticLockMap: (NotRequired - Default map:{})
# The definition for optimistic lock of DBFlute.
#
#; optimisticLockMap = map:{
# # o updateDateFieldName: (NotRequired - Default '')
# ; updateDateFieldName = UPDATE_DATE
#
# # o versionNoFieldName: (NotRequired - Default 'VERSION_NO')
# # The column name of version no for optimistic lock.
# # Basically you don't need this if your tables have the column 'VERSION_NO'.
# # because the default value is 'VERSION_NO'.
# ; versionNoFieldName = VERSION_NO
#}
# - - - - - - - - - -/
互換モード、LambdaのselectEntity()の戻り値
1.0.x から 1.1.x に互換モードで移行した人だけが対象です。
isAvailableSelectEntityPlainReturn を true にすることで、selectEntity()の戻り値が Optional ではなくそのままのEntityが戻るようになりますが、同時に isMakeCallbackConditionBeanSetup を true にして、Lambda引数のselectEntity()も生成しているとき、そちらだけは Optional になるようになっています。 (sp3までは、両方とも Plain な Entity だった)
これにより、古い方のselectEntity()だけは完全に今まで通りで、新しいLambda引数のselectEntity()はOptionalで完全に新しいやり方で実装していくことができます。
もし、Lambda引数のselectEntity()も Plain な Entity にしたいときは、isAvailableLambdaSelectEntityForcedlyOptional を false にします。
実装上の注意点
特になし