这篇文章主要介绍了ibatis一对多数据库如何实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇ibatis一对多数据库如何实现文章都会有所收获,下面我们一起来看看吧。
成都创新互联公司专业为企业提供雁峰网站建设、雁峰做网站、雁峰网站设计、雁峰网站制作等企业网站建设、网页设计与制作、雁峰企业网站模板建站服务,10年雁峰做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
iBatis的多表关联。 ibatis的表关联,和数据库语句无关,是在Java程序中,把若干语句的结果关联到一起。 这种关联形式,虽然在大数据量时是很奢侈的行为,但是看起来很干净,用起来也很方便。这里用表lock和key为例,一个lock可以配多个key。 CREATETABLE lock( id int, lockName varchar ); CREATETABLEkey( id int, lockId int, keyName varchar );定义映射类 package zzcv.dao.domain; publicclass Lock { privateint id; private String lockName; private List<Key> keys = new ArrayList<Key>(); publicvoid getId(){ return.. ... //省略 } package zzcv.dao.domain; publicclass Key { privateint id; private String keyName; private Lock lock; ... //省略 }表关联通过配置文件的resultMap实现,不需要关联的查询仍可用resultClass <sqlMap namespace="test"> <typeAlias alias="Key"="zzcv.dao.domain.Key"/> <typeAlias alias="Lock"="zzcv.dao.domain.Lock"/> <resultMap id="KeyResult"="Key"> <result property="id"="id"/> <result property="keyName"="keyName"/> <result property="lock"="lockId"="getLockById"/> </resultMap> <!----> <resultMap id="LockResult"="Lock"> <result property="id"="id"/> <result property="lockName"="lockName"/> <result property="keys"="id"="getKeysByLockId"/> </resultMap> <!----> <!----> <select id="selectAllkeys"="KeyResult"> <![CDATA[ select id,lockId,keyName from key ]]> </select> <select id="getLockById"="int"="Lock"> <![CDATA[ select id,lockName from lock where id = #value# ]]> </select> <select id="selectAllLocks"="LockResult"> <![CDATA[ select id,lockName from lock ]]> </select> <select id="getKeyByLockId"="int"="key"> <![CDATA[ select id,lockId,keyName from lock where lockId = #value# ]]> </select> </sqlMap> 现在可以代码中使用了 ... .. try{ Reader reader ="mxd/dao/data/SqlMapConfig.xml"); sqlMapper = SqlMapClientBuilder.buildSqlMapClient(reader); reader.close(); } catch(IOException e){ thrownew"Something bad happened while building the SqlMapClient instance."+ e, e);} List locks=sqlMapper.queryForList("selectAllLocks"); //取一个Lock对象。 =(Lock)locks.get(0); //从Lock对象取List<Key>。 =lock.getKeys(); //示例结束,取到结果了,剩余的一个关联是取对象Lock,其余操作差不多,就不写出了。 ...
关于“ibatis一对多数据库如何实现”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“ibatis一对多数据库如何实现”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注创新互联行业资讯频道。
分享文章:ibatis一对多数据库如何实现
本文地址:https://www.cdcxhl.com/article0/jsssoo.html
成都网站建设公司_创新互联,为您提供品牌网站制作、网站制作、关键词优化、响应式网站、搜索引擎优化、虚拟主机
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联