前言:
你已经写好了一个spring项目,并且是可以运行的,现在你想优化代码,引入mybatis。
目录:
1、导入依赖包
2、在applicationContext.xml中配置
3、修改DaoImpl的代码
4、写mpper文件
废话不说,一顿操作猛如虎:
1、导入jar包,两个,mybatis和mybatis-spring。此时你的项目中是存在spring需要的jar包的,不再赘述。
2、在spring的配置文件applicationContext.xml中配置mybatis的sqlSessionFactoryBean,48--55行是基本是固定写法,第50、51行注意是value=" ",分别写实体类所在的位置和mapper文件所在的位置。57--65是你项目的Dao,照葫芦画瓢吧,改成你自己的。
3、接下来就是修改DaoImpl的代码,让你瞄一眼代码,依然是照葫芦画瓢哈。
XXXDaoImpl要继承SqlSessionDaoSupport并实现XXXDao接口,贴几个增删改查的代码吧,我相信你可以看懂。
4、好了,瞄完了Dao层,该mapper文件了,mapper的命名空间写全类名比较好,写resultMap,它是你的实体属性与表字段的对应,你能看懂,我就不解释了。
在mapper文件里写增删改查语句,给几个例子吧,看着哈,注意什么时候用parameterType="Map",没看出来的,你可以到上面看看Dao那里。也要注意什么时候用resultMap="bookMap"。我相信,你知道。
备注:
当实体属性与表字段名相同的时候,resultMap映射代码可不写,select时,返回用 resultType。当实体属性与表字段名不同的时候resultMap映射代码必须写,select时,返回用 resultMap。原因是java反射技术,如果列名和实体类字段名不同,则反射不成功。