初识MyBatis

MyBatis框架

  MyBatis是一个地道的数据持久层框架,在实体类和SQL语句之间建立映射关系,是一种半自动化的ORM完毕。其封装性要小于Hibernate,品质卓越,并且小巧、简单命理术数,现在应用也更为广阔。

数量持久化概念

  数据持久化是将内存中的数据模型转换为存储模型,以及将积存模型转换为内存中的数据模型的统称。例如,文件的存储、数据的读取等都是数码持久化操作。数据模型可以是其余数据结构或对象模型,存储模型可以是涉及模型、XML、二进制流等。

MyBatis框架简介

  MyBatis是一个开源的数码持久层框架。它里面封装了经过JDBC访问数据库的操作,支持普通的SQL查询、存储进度和高档映射,大概扫除了独具的JDBC代码和参数的手工安装以及结果集的查找。MyBatis作为持久层框架,其紧要性考虑是将顺序中的大批量SQL语句剥离出来,配置在配置文件中,达成SQL的灵活配置。那样做的裨益是将SQL与程序代码分离,可以在不改动程序代码的气象下,直接在安排文件中修改SQL。

  MyBatis的前身是iBatis,本身是Apache的一个开源项目,二〇一〇年这几个种类有Apache
Software Foundation迁移到了GoogleCode,并改名换姓为MyBatis。二零一三年动迁到Github。

ORM介绍

  ORM(Object/Relational
Mapping)即对象/关系映射,是一种多少持久化技术。它在对象模型和关系型数据库之间成立起对应提到,并且提供了一种体制,通过JavaBean对象去操作数据库表中的数据。

  在实质上付出中,程序员使用面向对象的技巧操作数据,而当存储数据时,使用的真的关系型数据库,那样造成了累累困难。ORM在对象模型和关周到据库的表之间创造了一座桥梁。有了ORM,程序员就不需求再使用SQL语句操作数据库中的表,使用API直接操作JavaBean对象就可以完结多少的蕴藏、查询、更改和删除等操作。MyBatis通过不难的XML或表明举办计划和原始映射,将实体类和SQL语句之间创立映射关系,是一种半自动化的ORM落成。

采用MyBatis访问数据库的具体步骤

  1.导入MyBatis的jar包。

  2.编制mybatis-config配置文件。

    a).配置setting。

    b).设置实体类的别名。

    c).配置数据源。

      1.陈设事务的完毕方式。

      2.配置datasource。

    d).配置mapper映射文件。

MyBatis 1MyBatis 2

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
 3 <configuration>
 4     <settings>
 5         <setting name="logImpl" value="LOG4J"/>
 6     </settings>
 7     <typeAliases>
 8         <package name="pojo"/>
 9     </typeAliases>
10     <environments default="demo">
11         <environment id="demo">
12             <transactionManager type="JDBC" />
13             <dataSource type="POOLED">
14                 <property name="driver" value="com.mysql.jdbc.Driver"/>
15                 <property name="url" value="jdbc:mysql://localhost:3306/smbms?charEncoding=utf-8"/>
16                 <property name="username" value="root"/>
17                 <property name="password" value="root"/>
18             </dataSource>
19         </environment>
20     </environments>
21     <mappers>
22         <mapper resource="mapper/UserMapper.xml" />
23     </mappers>
24 </configuration>

mybatis-config配置文件

  3.创办映射文件并在炫耀文件之中编写sql语句。

MyBatis 3MyBatis 4

1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 <mapper namespace="dao.UserDao">
4     <select id="getAllUser" resultType="User">
5         select * from smbms_user
6     </select>
7 </mapper>

mapper映射文件

  4.创办测试类测试,通过SqlSessionFactory获得sqlsession。

MyBatis的优缺点

  优点:

  1).与JDBC相比较,减弱了50%上述的代码量。

  2).MyBatis是最简易的持久化框架,小巧并且简单命理易学。

  3).MyBatis箱单灵活,不会对应用程序或者数据库的水土保持规划强加任何影响,SQL写在XML里,从程序代码中根本分手,下落耦合度,便于统一保管和优化,并且可接纳。

  4).提供XML标签,帮助编写动态SQL语句。

MyBatis,  5).提供映射标签,帮忙对象与数据库的ORM字段关系映射。

  缺点:

  1).SQL语句的编制工作量较大,对开发人士编写SQL语句的底子有早晚须要。

  2).SQL语句信赖于数据库,导致数据库移植性差,无法轻易更换数据库。

  适用场所:

  MyBatis专注于SQL本身,是一个足足灵活的DAO层解决方案。适用于对质量的须求很高,或者须要转变较多的系列。

 

网站地图xml地图