mybatis 是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。
mybatis通过xml或注解的方式将要执行的各种 statement配置起来,并通过java对象和statement中sql的动态参数进行映射生成最终执行的sql语句。
最后mybatis框架执行sql并将结果映射为java对象并返回。采用ORM思想解决了实体和数据库映射的问题,对jdbc 进行了封装,屏蔽了jdbc api 底层访问细节,使我们不用与jdbc api 打交道,就可以完成对数据库的持久化操作。
MyBatis官网地址:http://www.mybatis.org/mybatis-3/
Mapper映射文件MyBatis-config.xml 核心配置文件
MyBatis的相关api Resources
构建器SqlSessionFactoryBuilderorg.apache.ibatis.io.Resources:加载资源的工具类。
org.apache.ibatis.session.SqlSessionFactoryBuilder:获取 SqlSessionFactory 工厂对象的功能类
通过加载mybatis的核心文件的输入流的形式构建一个SqlSessionFactory对象
String resource = "org/mybatis/builder/mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); SqlSessionFactory factory = builder.build(inputStream);
其中, Resources 工具类,这个类在 org.apache.ibatis.io 包中。Resources 类帮助你从类路径下、文件系统或一个 web URL 中加载资源文件。
工厂对象SqlSessionFactorySqlSession会话对象org.apache.ibatis.session.SqlSessionFactory:获取 SqlSession 构建者对象的工厂接口。
MyBatis 映射配置文件 映射配置文件介绍org.apache.ibatis.session.SqlSession:构建者对象接口。用于执行 SQL、管理事务、接口代理。
SqlSession 实例在 MyBatis 中是非常强大的一个类。在这里你会看到所有执行语句、提交或回滚事务和获取映射器实例的方法。
查询功能映射配置文件包含了数据和对象之间的映射关系以及要执行的 SQL 语句
< select >查询功能标签
- 属性
id:唯一标识, 配合名称空间使用。
parameterType:指定参数映射的对象类型。
resultType:指定结果映射的对象类型。 - SQL 获取参数: #{属性名}
新增功能
< insert>:新增功能标签。
- 属性
id:唯一标识, 配合名称空间使用。
parameterType:指定参数映射的对象类型。
resultType:指定结果映射的对象类型。 - SQL 获取参数: #{属性名}
修改功能insert into mybatis.user(id, name, password) values (#{id}, #{name}, #{password});
< update>:修改功能标签。
- 属性
id:唯一标识, 配合名称空间使用。
parameterType:指定参数映射的对象类型。
resultType:指定结果映射的对象类型。 - SQL 获取参数: #{属性名}
删除功能update mybatis.user set name=#{name}, password = #{password} where id = #{id}
< delete>:查询功能标签。
- 属性
id:唯一标识, 配合名称空间使用。
parameterType:指定参数映射的对象类型。
resultType:指定结果映射的对象类型。 - SQL 获取参数: #{属性名}
映射文件小结 Mybatis核心配置文件介绍delete from mybatis.user where id = #{id};



