动手改造Ibatis,使其支持文件系统存储数据列 预览
本文 接上文 http://www.cnblogs.com/suyuan/archive/2009/04/16/1436976.html 请输
Ibatis 修改版 修改说明
1. sql-map-config 中增加
<BaseDirectory resource=”d:/ibatis/”/>
当存在文件存储方式时,在此处配置存储根目录路径
2 在使用文件存储时候 必须配置resultMap的key 程序根据所配置的key生成hash路径,此key值必须在数据库中唯一, 如果某一列使用数据库存储,则在result 配置 datasource=”file” 则标志该列将存储在文件系统中
3 查询操作,当查询操作 返回的是resultMap 时 则加载resultMap中配置的全部列,如果该列存储在文件系统中,则读取后赋值,如果返回值是resultClass 则紧紧返回数据库中保存的列,将不从文件系统中加载数据
4 入库操作,如果对象中某个属性存储在文件系统 则在入库时候必须配置correlativeMap, 并且所配置中是map包括存储在文件系统的列的配置,同时必须配置selectKey 用于取得生成hash路径的原始值,该值必须是唯一的 反之不需要配置selectKey
5 更新操作
如果有对象属性存储在文件系统中同样需要配置correlativeMap 如果是对唯一数据更新 同时参数中必须包括用于生成hash路径的唯一值 即 correlativeMap 中配置的key 则可以不配置selectKey 如果是进行批量更新则必须配置selectKey 用于返回 key列表
6 删除操作
删除操作请参考更新操作说明
备注:目前不支持事务和批操作