MyBatis学习-1

MyBatis 简介
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)
作用: 数据访问层框架. 底层是对 JDBC 的封装.
优点之一:使用mybatis时不需要编写实现类,只需要写需要执行的sql命令
MyBatis环境搭建和使用
1.导入 jar
2.在src下新建全局配置文件
- 没有名称和地址要求
- 在全局配置文件中引入 DTD 或 schema
- 如果导入dtd后没有提示,可以采用使用本地dtd 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 <configuration>
 <!--default引用的environment的id,当前所使用的环境-->
 <environments default="mysql">
 <environment id="mysql">
 <!--使用原生JDBC事务-->
 <transactionManager type="JDBC"></transactionManager>
 <dataSource type="POOLED">
 <property name="driver" value="com.mysql.jdbc.Driver"></property>
 <property name="url" value="jdbc:mysql://localhost:3306/ssm"></property>
 <property name="username" value="root"></property>
 <property name="password" value="kylin"></property>
 </dataSource>
 </environment>
 </environments>
 <mappers>
 <mapper resource="com/kylin/mapper/FlowerMapper.xml"></mapper>
 </mappers>
 </configuration>
注意environments标签中的default属性值可以随便取,但是下方的environment标签中的id属性值则必须于default属性值保持一致。通过mappers标签中的maper标签并设置resource属性的值为要执行的sql操作的xml的文件路径从而连接数据库进行操作
3.新建以 mapper 结尾的包,在包下新建:实体类名+Mapper.xml
- 文件作用:编写需要执行的 SQL 命令
- 把 xml 文件理解成实现类1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 <!--namespace:理解成实现类的全路径(包名+类名)-->
 <mapper namespace="a.b">
 <!--id:方法名
 parameterType:定义参数类型
 resultType:返回值类型
 如果方法返回值是list,在resultType中写List的泛型,因为mybatis对jdbc封装,一行一行读取数据
 -->
 <select id="selAll" resultType="com.kylin.pojo.Flower">
 select * from flower
 </select>
 <select id="selById" resultType="int">
 select count(*) from flower
 </select>
 <select id="c" resultType="com.kylin.pojo.Flower">
 select * from flower
 </select>
 </mapper>
namespace:理解成实现类的全路径(包名+类名)
id:方法名
parameterType:定义参数类型
resultType:返回值类型:如果方法返回值是list,在resultType中写List的泛型,因为mybatis对jdbc封装,一行一行读取数据
注意:namespace属性值可以随便取,但是调用实现的时候,使用的路径就是namespac+id,并且不要忘记这mybaits的配置文件中对此xml文件进行绑定

4.测试结果(只有在单独使用 mybatis 时使用,最后 ssm 整合时下面代码不需要编写.)
| 1 | InputStream is = Resources.getResourceAsStream("myabtis.xml"); | 

环境搭建详解
- type 属性可取值 - JDBC,事务管理使用 JDBC 原生事务管理方式
- MANAGED 把事务管理转交给其他容器.原生 JDBC 事务setAutoMapping(false);
 
- type 属性 - POOLED 使用数据库连接池
- UNPOOLED 不实用数据库连接池,和直接使用 JDBC 一样
- JNDI:java 命名目录接口技
 
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Kylin!
 评论












