Mybatis(一)

一、简介

1、Mybatis 开源免费框架原名叫 iBatis,2010 google code,2013 年迁移到 github 。
2、作用:数据访问层框架底层是对 JDBC 的封装。
3、mybatis 优点:使用 mybatis 时不需要编写实现类只需要写需要执行的 sql 令。
 

二、环境搭建

 
1、导入 jar 包
2、在 src 下新建全局配置文件(编写 JDBC 四个变量2、在 src 2、在src下新建全局配置文件(编写 JDBC 四个变量) mybatis.xml
(1)、没有名称和地址要求
(2)、在全局配置文件中引入 DTD 或 schema
注意:如果导入 dtd 后没有提示
解决:Window--> preference --> XML --> XMl catalog --> add 按钮
(3)、mybatis.xml 文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!-- default引用environment的id,当前所使用的环境 -->
    <environments default="default">
        <!-- 声明可以使用的环境 -->
        <environment id="default">
            <!-- 使用原生JDBC事务 -->
            <transactionManager type="JDBC"></transactionManager>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/_mybatis"/>
                <property name="username" value="root"/>
                <property name="password" value="lai98543211"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/zzu/mapper/PeopleMapper.xml"/>
    </mappers>
</configuration>
 
3、新建以 mapper 结尾的包在包下新建实体类名+Mapper.xml
(1)文件作用编写需要执行的 SQL 命令
(2)xml 文件理解成实现类.
(3)、xml 文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper    namespace="a.b">
    <select id="selectAll"    resultType="com.zzu.pojo.People">
        select * from test
    </select>
</mapper>
 
4、测试结果只有在单独使用 mybatis 时使用最后 ssm 整合时下面代码不需要编写
InputStream is = Resources.getResourceAsStream("mybatis.xml");
//使用工厂设计模式
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
//生产SqlSession
SqlSession session = factory.openSession();
        
List<People> list = session.selectList("a.b.selectAll");
for(People p : list) {
    System.out.println(p.toString());
}
session.close();

三、环境搭建详解

 
1、全局配置文件中内容:
(1)、<transactionManager/> type 属性可取值
  (a)、JDBC,事务管理使用 JDBC 原生事务管理方式
  (b)、MANAGED 把事务管理转交给其他容器
 
原生 JDBC 事务 setAutoMapping(false)
 
2、<dataSouce/>type 属性
(1)、POOLED 使用数据库连接池
(2)、UNPOOLED 不实用数据库连接池和直接使用 JDBC 一样
(3)、JNDI:java 命名目录接口技术
原文地址:https://www.cnblogs.com/wxinyi/p/12526624.html