CB - TableInfo
概要
ConditionBeanには、フレームワーク内部の都合で public や protected になっているメソッドが幾つかありますが、アプリでは利用してはいけないメソッドがあります。
"知ってしまったら使ってしまいそう" と思われる方は、このページは読まずに、すぐにDBFlute内の適当なページに飛んで下さい。
利用してはいけないメソッド
- getSqlClause()
- ConditionBean内部でSQL文組み立てるクラスを取得するメソッドですが、アプリでは使ってはいけません。 アプリ用のメソッドから内部で呼び出されています。
- getSqlComponentOfOrderByClause()
- ConditionBean内部でOrderByを組み立てるクラスを取得するメソッドです。アプリでは使ってはいけません。 アプリ用のOrderBy系のメソッドから内部で呼び出されています。
- ...FetchNarrowing()
- ignoreFetchNarrowing() や restoreIgnoredFetchNarrowing() は、 FetchNarrowing (ページングの絞り込み処理)を内部的に調整するメソッドです。アプリには関係ありません。
- その他 x で始まるメソッド
- xregisterFreeParameter() や xregisterUnionQuerySynchronizer() など、"x" で始まるメソッドは public、protected に関わらずアプリでは呼び出してはいけないメソッドです。
- その他、色々なメソッド
- 特に protected メソッドでは、アプリで利用されることを想定していないメソッドがたくさんあります。 ExConditionBean にて拡張実装をするときは、惑わされないようにしましょう。 但し、ソースコードをしっかり読んだ上で、かつ、アップグレード時の変更も許容し(テストをしっかり書く)、 特殊な実装をするという場合はその限りではありません。
また、全般的に get, is, has で始まるメソッドの多くはアプリでは不要です。 呼び出しても内部情報が取得されるだけで動作には支障のないことが多いですが、不要なものを呼び出して良いことはありません。
これらは、基本的に利用していはいけませんが、ソースコードをしっかり読んだ上で、かつ、アップグレード時の変更も許容し(テストをしっかり書く)、 特殊な実装をするという場合はその限りではありません。