没大段时间写博客,工作的时候记录一些,等有时间了再写博客总结吧。现在都是加班来会议一天到底学到了什么,然后记录一些… 觉得盲目的工作实在是太无趣了。
spring现在普及度很广,在项目中就像千手观音一般,无所不能。
而ibatis几十年来的orm,香港服务器租用,虚拟主机,现已经转成myBitis,鉴于现在orm的数目是在太多,网站空间,ibatis也越来越少人用了,事实上一个orm在spring看来只是千手观音中的一个手上的法宝罢了。
applicationContext.xml
beansxmlns=”http://www.springframework.org/schema/beans”xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”xsi:schemaLocation
相当清晰。
spring拿到ibatis法宝:
applicationContext-dao.xml:
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”xsi:schemaLocation=”http://www.springframework.org/schema/beans “default-lazy-initclassclassclasspath:/sql-map-config.xml
配置过单独的ibatis的话,就知道我们是要自己配置transactionManager和sqlMapClient的。
现在我们把这两个对象交给spring管理了
注意到sqlMapClient参数的configLocation:classpath:/sql-map-config.xml
我们来看看:
DOCTYPE sqlMapConfig PUBLIC “-//ibatis.apache.org//DTD SQL Map Config 2.0//EN””http://ibatis.apache.org/dtd/sql-map-config-2.dtd”maxRequests
resource就是写sql文的文件啦,那么就让我们开始写sql吧。来两条select语句吧:其中蕴含了大部分可能遇到的问题,包括isEqual 判断,<![CDATA[是为了尖括号能够使用
resultMapselect id,name from tb_admin where status = 1
select * from (select rownum rn,m.* from(select *from tb_admin wherestatus=1 and roleid=1idin(select user_id from qx_user_role where role_id=#roleid#)order by id desc)m )where rn>#firstrow# and rn<#maxrow#select * from tb_admin where id = #value# and status = 1
insert语句可能会牵涉到自增长自然主键
,再回头,便生出无限羁绊。那是彼此的刺在对方心里留下的痕迹,