mybatis入门

一、主流的框架

Struts2   SpringMVC(控制层=》表示层)
Hibernate  Mybatis(数据访问层)
Spring

二、mybatis

是一个持久化的解决方案
是一个ORM框架

持久化:数据在瞬时状态和持久状态之间的转化  持久化操作包括增、删、改、查
ORM:对象关系映射  将实体类中的属性与数据库表的字段一一对应(操作实体类相当于操作表)

三、搭建mybatis环境的步骤

1、导入mybatis架包
2、创建mybatis核心配置文件(mybatis-config.xml)
3、创建实体类-POJO
4、DAO层-接口、SQL映射文件(sql映射文件的命名空间必须是接口的完全限定吗,sql语句对应id必须是接口的方法名)
5、在核心配置文件中注册sql映射文件(重点)
   <mappers>
	<package name="cn.kgc.dao"/><!-- 一劳永逸 -->
</mappers>
6、测试

   //1.加载核心配置文件
   //2.创建SqlSessionFactory对象
   //3.创建SqlSession对象

   //方式一:通过SqlSession实例直接运行映射的SQL语句
   //4.通过SqlSession对象的selectOne、selectList、insert、update、delete等方法执行sql映射文件中sql语句

   //方式二:基于mapper接口的方式执行SQL语句(开发中使用)
   //4.通过SqlSession的getMapper方法反射获取接口的实现类(相当于new 实现类)  
   //5.调用接口的方法

   //6.处理结果

sql映射文件的注意点:<!-- 每一个mapper文件的namespace是唯一的 注:如果使用接口,namespace的值必须是接口的完全限定名 -->
                   <!-- 获取所有的角色 ,需要通过resultType指定返回值类型 注:如果使用接口,id必须和接口中的方法名一一对应 -->

四、mybatis三大核心对象的作用域

SqlSessionFactoryBuilder 作用域:代码块内,创建完 SqlSessionFactory对象后,将没有作用
SqlSessionFactory 产生SqlSession对象 作用域:相当于Application 全局,一个网站有一个,生命周期与应用程序的生命周期相同
SqlSession 对数据库进行增删查改;作用域:一次操作(请求)(每次用完将关闭)

五、mybatis框架的优缺点

优点
与JDBC相比,减少了50%以上的代码量
最简单的持久化框架,小巧并简单易学
SQL代码从程序代码中彻底分离,可重用
提供XML标签,支持编写动态SQL
提供映射标签,支持对象与数据库的ORM字段映射
缺点
SQL语句编写工作量大,对开发人员有一定要求
数据库移植性差

六、mybatis核心配置文件元素节点的顺序【了解】

properties  
settings    
typeAliases:为 Java 类型命名一个别名(简称)
typeHandlers   
objectFactory   
plugins
environments   环境
	environment   环境变量
		transactionManager  事务管理器
		dataSource   数据源
mappers    映射器

注:transactionManager元素的type可以取值为JDBC/managed
JDBC: 事务的提交/回滚由程序员自己手动完成
managed: 事务的提交/回滚由spring框架去完成。

七、配置properties元素

1、配置resource属性,引入外部文件
   <properties resources="database.properties"/>
2、配置property节点
   <property name="driver" value="com.mysql.jdbc.Driver"/>
   ……

注:resource属性值的优先级高于property子节点配置的值

八、typeAliases元素:简写冗长的Java类名
1、给指定实体类定义别名


2、给指定包下的所有实体类定义别名
   <typeAliases>
 	<package name ="cn.smbms.pojo" />
            <!--注册指定包下的所有接口-->
            <package name ="cn.smbms.dao.user" />
   </typeAliases>

九、Mappers元素

1、配置SQL映射文件的路径
   <mapper resource="sqlmap/User.xml" />
2、配置接口的路径
   <mapper class="cn.mybatis.mapper.UserMapper"/>

3.配置包名
    <mappers>
	<package name="cn.kgc.dao"/><!-- 一劳永逸 -->
</mappers>


   注:要求接口名称和SQL映射文件名称相同,且放在同一个目录中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值