关于java运行时类型确定的思考

使用JdbcTemplate.queryForList()进行查询,方法名如下:

public List<Map<String, Object>> queryForList(String sql,@Nullable Object...args)throws DataAccessException {

return query(sql,args,getColumnMapRowMapper());

}

相同的例子还有 mybatisplus中的selectMaps(),

返回的List中包含的每个Map<String, Object>为单条记录。

该方法会根据查询的结果自动为每个值设置相应类型,具体使用时需要进行向下转型。编译时不会检查向下转型的类型是否正确,只有在运行才可能抛出java.lang.ClassCastException错误。

暂时还不清楚将单条记录转为Map<String,Object>时是如何为每个字段设置具体的类型(即向上转型为Object类型)。╮(╯▽╰)╭

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容