Ibatis parameterClass与resultClass支持的Type

可以在ibatis的源码:com.ibatis.sqlmap.engine.type.TypeHandlerFactory 中看到支持的别名类型

putTypeAlias("string",String.class.getName());  
putTypeAlias("byte", Byte.class.getName());  
putTypeAlias("long", Long.class.getName());  
putTypeAlias("short", Short.class.getName());  
putTypeAlias("int", Integer.class.getName());  
putTypeAlias("integer", Integer.class.getName());  
putTypeAlias("double", Double.class.getName());  
putTypeAlias("float", Float.class.getName());  
putTypeAlias("boolean", Boolean.class.getName());  
putTypeAlias("date", Date.class.getName());  
putTypeAlias("decimal",BigDecimal.class.getName());  
putTypeAlias("object", Object.class.getName());  
putTypeAlias("map", Map.class.getName());  
putTypeAlias("hashmap", HashMap.class.getName());  
putTypeAlias("list", List.class.getName());  
putTypeAlias("arraylist",ArrayList.class.getName());  
putTypeAlias("collection", Collection.class.getName());  
putTypeAlias("iterator", Iterator.class.getName());  
putTypeAlias("cursor", java.sql.ResultSet.class.getName());  

在根据缩写查找Class name的时候会全部转换为小写再进行查找

即:resultClass=" string",resultClass="String"都是可以的

(1)   如果写的是全路径,则全路径必须大小写正确,例如:java.lang.string就不能识别,转换时会报ClassCast错误,必须是java.lang.String

(2)   resultClass中必须必须输可以实例化的具体类,而不能输接口,如:hashmap是可以的,而输map就不行,因为处理结果的时候需要先实例化resultClass,然后进行赋值

(3)   parameterClass可以输接口类,如list,map都是可以的,因为子类可以转换为父类

 

与xml处理相关的其他类

com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient

com.ibatis.sqlmap.engine.builder.xml.SqlMapParser.parse

转载于:https://my.oschina.net/zjllovecode/blog/1802118

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值