私はspring-boot-mybatis-starter
を使用しています。この時点で私はmybatisにかなり精通していますが、結果の列の種類に関する情報を得る可能性を探しています。出来ますか ?Mybatis - タイプ情報で結果を取得
たとえば、私はHashmap<String, Object> results
を取得しています - を使用していないObject
の種類を知りたいと思います。
アイデア?
私はspring-boot-mybatis-starter
を使用しています。この時点で私はmybatisにかなり精通していますが、結果の列の種類に関する情報を得る可能性を探しています。出来ますか ?Mybatis - タイプ情報で結果を取得
たとえば、私はHashmap<String, Object> results
を取得しています - を使用していないObject
の種類を知りたいと思います。
アイデア?
あなたは結果で実際のJavaタイプを知りたい場合は、次のClass c = null == results.get("columnName") ? null : results.get("columnName").getClass();
あなたはSQLの種類について知りたい場合は、私はあなたができない恐れています。これには、結果セットのメタデータにアクセスする必要があります。これはMybatisの仕事です。マッピング処理では、カスタム・タイプ・ハンドラを使用する場合にのみ制御できますが、非常に特殊な場合に使用されます。 少なくとも95%の使用例では、Mybatisは標準SQL型を単純なJava型にマップします。私が知る限り、マッピングクラスにはログはありません。 (Mybatisは私の意見ではログがほとんどありません)。
この質問の背後にある目的を説明すると役立つ可能性があります。
次のように、情報スキーマからテーブルの列タイプを取得できます。
SELECT column_name, column_type
FROM INFORMATION_SCHEMA.columns
where table_schema='[Table_schema]' and table_name='[Table_Name]'.
希望します。