Mybatis入门
1.下载Mybatis核心jar包
http://www.mybatis.org/mybatis-3/getting-started.html
https://github.com/mybatis/mybatis-3/releases
2.创建工程,引入Mybatis核心包及依赖包
3. 在数据库中创建表,并创建与表对应的关系映射(domain-javaBean类)
package com.helong.domain;
import lombok.Getter;
import lombok.Setter;
@Setter@Getter
public class Customer {
private Integer cust_id;
private String cust_name;
private String cust_profession;
private String cust_phone;
private String email;
@Override
public String toString() {
return "Customer{" +
"cust_id=" + cust_id +
", cust_name='" + cust_name + '\'' +
", cust_profession='" + cust_profession + '\'' +
", cust_phone='" + cust_phone + '\'' +
", email='" + email + '\'' +
'}';
}
}
4.创建Mybatis核心配置文件SqlMappingConfig.xml
注意:配置文件一般放在src文件下,或者将文件放在resource资源文件夹下,不然找不到文件的路径。
<?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>
<!-- spring整合后 environments配置将废除 使用spring中的连接池 -->
<environments default="development">
<environment id="development">
<!-- 使用jdbc事务管理 -->
<transactionManager type="JDBC" />
<!-- 数据库连接池 -->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8" />
<property name="username" value="root" />
<property name="password" value="123456" />
</dataSource>
</environment>
</environments>
<!--加载映射文件-->
<mappers>
<mapper resource="com/helong/domain/Customer.xml"></mapper>
</mappers>
</configuration>
5.创建于表对应的关系映射的Mapping文件并在文件中编写sql语句
<?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="myTest">
<!--根据cust_id查询客户-->
<select id="queryCustomerById" parameterType="Int" resultType="com.helong.domain.Customer">
SELECT * FROM `customer` WHERE cust_id = #{cust_id}
</select>
</mapper>
6.在核心配置文件中引入Mapping(Customer.xml在配置文件中已经添加了)
<!--加载映射文件-->
<mappers>
<mapper resource="com/myxq/domain/Customer.xml"></mapper>
</mappers>
7.创建工厂,并执行sql语句
package com.helong.test;
import com.helong.domain.Customer;
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 org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
public class MyTest {
@Test/*使用测试时候先导入单元测试的jar包*/
public void test() throws IOException {
//1.SqlSessionFactoryBuilder用来加载配置文件
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//2.读取配置文件
InputStream resourceAsStream = Resources.getResourceAsStream("SqlMappingConfig.xml");
//3.获取session工厂
SqlSessionFactory sessionFactory = sqlSessionFactoryBuilder.build(resourceAsStream);
//4.获取会话 --JDBC连接
SqlSession sqlSession = sessionFactory.openSession();
//5.执行sql
Customer queryCustomerById = sqlSession.selectOne("queryCustomerById", 5);
System.out.println(queryCustomerById);
//6.关闭session会话
sqlSession.close();
}
}
8.文件目录参考