需要:1.maven依赖
2.mybatis 核心配置文件 配置数据库URL username password等 需要添加注册 mapper.xml
3.mybatis 工具类通过sqlSessionFactoryBuilder 获取sqlSessionFactory类 从而获取sqlSession 即拿到执行sql的对象 不需要修改
4.pojo实体类 不用改变
5.mapper接口 要实现的功能的方法 添加所需要的
6.mapper.xml namespace要对应mapper接口 sql语句。添加所需要的
id. 对应接口层方法名。resulttype 方法返回类型。 parameterType 方法参数类型
取用pojo层实体类的属性 #{属性名}
增删改需要提交事务 sqlSession.commit();
org.mybatis mybatis3.5.7
持久化将程序的数据在持久状态和瞬时状态转化的过程
持久层Dao层 Service层 Controller层
完成持久化工作的代码块
层界限十分明显。
1.创建数据库
2.创建maven项目
3.导入依赖
myql驱动
mybatis
junit
mysql mysql-connector-java5.1.49 org.mybatis mybatis3.5.7 junit junit4.12
4.IDEA连接数据库
5.编写配置文件 mybatis-config.xml
6.编写工具类
package com.zxw.util;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import sun.misc.Resource;
import java.io.IOException;
import java.io.InputStream;
public class MybatisUtils {
private static SqlSessionFactory sqlSessionFactory;
static {
try {
//获取sqlSessionFactory对象
String resource ="mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
//有了SqlSessionFactory对象 从中获取SqlSession的实例 相当于preparestatement执行sql的对象
public static SqlSession getSqlSession(){
return sqlSessionFactory.openSession();
}
}
编写代码
pojo 实体类
dao 接口
public interface UserDao {
List getUserList();
}
mapper 接口实现类. 由原来的userdaoimpl类转变为一个mapper配置文件
测试select * from mybatis.user ;
public class UserDaoTest {
@Test
public void test(){
SqlSession sqlSession = null;
try {
//1.获取sqlsession对象
sqlSession = MybatisUtils.getSqlSession();
//2.执行sql
//方式一: getMapper
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List userList = userMapper.getUserList();
for (User user : userList) {
System.out.println(user);
}
//方式二:
} catch (Exception e) {
e.printStackTrace();
} finally {
//3.关闭sqlsession
sqlSession.close();
}



