1、搭建环境
2、导入框架
3、编写代码
4、集成测试
ENGING=INNODB 数据库引擎支持事务。
入门_MyBatis中文网 中方文档
1、新建maven工程:删除src
2、导入依赖:mybatis 测试依赖 mysql
3、创建子模块:
4、官网中找到配置文件 复制到子模块。
<?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>
<environments default="development"> //开发环境 可写测试环境
<environment id="development">
<transactionManager type="JDBC"/> //管理的方法
<dataSource type="POOLED"> //数据连接源
<property name="driver" value="${driver}"/> //驱动(com.mysql.jdbc.Driver)
<property name="url" value="${url}"/> //数据库的的信息 链接地址 库 编码 时间事务等
<property name="username" value="${username}"/> //数据库用户名
<property name="password" value="${password}"/> //数据库密码
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
关键点:
从 XML 中构建 SqlSessionFactory
每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为核心的。SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得。而 SqlSessionFactoryBuilder 则可以从 XML 配置文件或一个预先配置的 Configuration 实例来构建出 SqlSessionFactory 实例。
从 XML 文件中构建 SqlSessionFactory 的实例非常简单,建议使用类路径下的资源文件进行配置。 但也可以使用任意的输入流(InputStream)实例,比如用文件路径字符串或 file:// URL 构造的输入流。MyBatis 包含一个名叫 Resources 的工具类,它包含一些实用方法,使得从类路径或其它位置加载资源文件更加容易。
使用下面的xml配置文件构建
String resource = "org/mybatis/example/mybatis-config.xml"; 设置配置文件的字符
InputStream inputStream = Resources.getResourceAsStream(resource); 一个输入的读取配置文件的流
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); 将流放进建造者模式的建造里面 的到SQLsesssion(一个执行sql语句的东西)
+————————————————————————————————————————————————————————————————————
不使用xml配置文件构建 sqlsessionfactory对象
DataSource dataSource = BlogDataSourceFactory.getBlogDataSource();
TransactionFactory transactionFactory = new JdbcTransactionFactory();
Environment environment = new Environment("development", transactionFactory, dataSource);
Configuration configuration = new Configuration(environment);
configuration.addMapper(BlogMapper.class);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);
————————————————————————————————————————————————————————————————————————
一般将其封装为工具类、
获取sqlsession
编写代码:
实体类、DAO接口、实现类
自己定义的mapper需要在xml中做映射
sqlsession可以通过方法得到 自己定义的mapper(有点像容器理念)
然后mapper执行定义抽象方法 xml中配置方法映射执行 sql语句。