Mybatis1
Mybatis(持久层框架):支持定制化sql,存储过程以及高级映射,使用简单的xml或注解来配置和映射原生信息。
Mapper就是为了解决单表增删改查,基于Mybatis的插件。开发人员不需要编写SQL,不需要在DAO中增加方法,只要写好实体类,就能支持相应的增删改查方法。
POJO+映射规则+SQL与接口
Mybatis两种编程模型:1、Mybatis封装了ibatis编程模型,使用sql
2、Mybatis:sql和Java编码分开,功能边界清晰,一个专注业务,一个专注数据(定制化sql+存储过程+高级映射)
Hibernate是一个全映射、全自动的框架,大量字段的POJO进行部分映射时比较困难(旨在消除sql)
Mybatis是一个半自动化的持久层框架(定制化sql)
javaBean 编写sql 预编译 设置参数 执行sql 封装结果 生成一条数据记录
Mybatis步骤:1、mybatis核心配置文件配置
2、POJO模型创建
3、映射文件配置
4、获取sqlSessionFactory
5、获取sqlSession
6、CRUD操作
7、事务操作
8、关闭session
1、根据xml配置文件,创建sessionFactory对象
String resource="mybatis.xml"
InputStream inputStream=Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory=new SqlSeesionFactoryBuilder.build(inputStream);
//sql配置文件:配置了每一个sql以及sql的封装规则
2、获取sqlSession实例,能直接执行已经映射的sql语句
sqlSession openSession=sqlSessionFactory.openSession();
3、将sql映射文件注册在全局配置文件中
xxxmapper.xml文件专门用于写sql语句(定制sql语句的文件)
xx.java数据表里的参数
在mybatis.xml文件中引入xxmapper.xml
<mappers>
<mapper resource="xxxxxmapper.xml" />
</mappers>
4、写代码:根据全局文件得到sqlSessionFactory
使用sqlSessionfactory获取到sqlSession对象使用它来增删改查
一个sqlSession就代表和数据库的一次会话,用完关闭
使用sql的唯一标识来告诉mybatis执行哪一个sql语句
接口式编程
EmployeeMapper mapper=openSession.getMapper(EmployeeMapper.class);
EmpoyeeMapper.class(接口类,全是sql语句方法)
EmployeeMapper.xml(实现类,具体sql语句执行类)