一、MyBatis简介
- MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架
- MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集
- MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录
- Mybatis 是一个 半自动的ORM(Object Relation Mapping)框架
二、如何下载MyBatis
下载网址: https://github.com/mybatis/mybatis-3/
三、开发环境的准备
1) 导入MyBatis框架的jar包、Mysql驱动包、log4j的jar包
myBatis-3.4.1.jar mysql-connector-java-5.1.37-bin.jar log4j.jar |
2) 导入log4j 的配置文件
<?xml version=”1.0″ encoding=”UTF-8″ ?> <!DOCTYPE log4j:configuration SYSTEM “log4j.dtd”>
<log4j:configuration xmlns:log4j=”http://jakarta.apache.org/log4j/”>
<appender name=”STDOUT” class=”org.apache.log4j.ConsoleAppender”> <param name=”Encoding” value=”UTF-8″ /> <layout class=”org.apache.log4j.PatternLayout”> <param name=”ConversionPattern” value=”%-5p %d{MM-dd HH:mm:ss,SSS} %m (%F:%L) \n” /> </layout> </appender> <logger name=”java.sql”> <level value=”debug” /> </logger> <logger name=”org.apache.ibatis”> <level value=”info” /> </logger> <root> <level value=”debug” /> <appender-ref ref=”STDOUT” /> </root> </log4j:configuration> |
3) 创建测试表
— 创建库 CREATE DATABASE test_mybatis; — 使用库 USE test_mybatis; — 创建表 CREATE TABLE tbl_employee( id INT(11) PRIMARY KEY AUTO_INCREMENT, last_name VARCHAR(50), email VARCHAR(50), gender CHAR(1) ); |
4) 创建javaBean
public class Employee {
private Integer id ; private String lastName; private String email ; private String gender ; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } @Override public String toString() { return “Employee [id=” + id + “, lastName=” + lastName + “, email=” + email + “, gender=” + gender + “]”; } |
5) 创建MyBatis的全局配置文件
- 参考MyBatis的官网手册
<?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=“com.mysql.jdbc.Driver” /> <property name=“url” value=“jdbc:mysql://localhost:3306/mybatis_1129” /> <property name=“username” value=“root” /> <property name=“password” value=“1234” /> </dataSource> </environment> </environments> <!– 引入SQL映射文件,Mapper映射文件 –> <mappers> <mapper resource=“EmployeeMapper.xml” /> </mappers> </configuration> |
6) 创建Mybatis的sql映射文件
- 参考MyBatis的官方手册
<?xml version=“1.0” encoding=“UTF-8” ?> <!DOCTYPE mapper PUBLIC “-//mybatis.org//DTD Mapper 3.0//EN” “http://mybatis.org/dtd/mybatis-3-mapper.dtd”>
<mapper namespace=“suibian”> <select id=“selectEmployee” resultType=“com.atguigu.myabtis.helloWorld.Employee”> select id ,last_name lastName ,email ,gender from tbl_employee where id = #{id} <!– select * from tbl_employee where id = #{id} –> </select> </mapper> |
7) 测试
- 参考MyBatis的官方手册
@Test public void test() throws Exception { String resource = “mybatis-config.xml”; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); System.out.println(sqlSessionFactory);
SqlSession session = sqlSessionFactory.openSession(); try { Employee employee = session.selectOne(“suibian.selectEmployee”, 1001); System.out.println(employee); } finally { session.close(); } } |
上一篇: 大数据面试题讲解-JVM垃圾回收算法
下一篇: 大数据培训价格多少钱