我正在使用 spring-boot-mybatis-starter
。目前,我对Mybatis非常熟悉,但是我正在寻找可能获取有关返回结果的列类型的信息。是否可以 ?
例如,我正在获得Hashmap<String, Object> results
-我想知道什么是Object
的类型不使用instance of
。
有什么想法?
如果您想知道结果中的实际Java类型:Class c = null == results.get("columnName") ? null : results.get("columnName").getClass();
如果您想了解SQL类型,我担心您不能。这需要访问Resultset元数据,而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]'.
希望它有帮助。