MyBatis的简介
-
MyBatis 是支持定制化 SQL以及高级映射(ORM)的优秀的持久层框架。
- Mybatis的前身是 Apache的一个开源项目 iBatis, 2010年迁移到了google code 改名为 MyBatis,最后又到了Github。
- MyBatis 官方文档地址:http://www.mybatis.org/mybatis-3/zh/index.html
- 官方框架目录介绍
MyBatis的搭建步骤
-
导入jar包
-
定义实体类
public class User {
private Integer userid;
private String username;
private String userage;
public Integer getUserid() {
return userid;
}
public void setUserid(Integer userid) {
this.userid = userid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserage() {
return userage;
}
public void setUserage(String userage) {
this.userage = userage;
}
public User(Integer userid, String username, String userage) {
super();
this.userid = userid;
this.username = username;
this.userage = userage;
}
public User() {
super();
}
@Override
public String toString() {
return "User [userid=" + userid + ", username=" + username + ", userage=" + userage + "]";
}
}
-
创建数据库和表
-
定义mapper接口
-
编写映射文件及主配置文件
<?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="text">
<!--配置环境 -->
<environment id="text">
<!--配置事物 -->
<transactionManager type="JDBC"/>
<!-- 配置数据源 -->
<dataSource type="UNPOOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/text"/>
<property name="username" value="root"/>
<property name="password" value="rain"/>
</dataSource>
</environment>
</environments>
<mappers>
<package name="com.cxy.pojo.User"/>
</mappers>
</configuration>
- 定义mapper实现类
- 定义测试类
public class MyBatisTest {
public static void main(String[] args) {
//指定配置文件的路径
String resource = "mybatis.xml";
//配置加载文件的io
try {
InputStream is = Resources.getResourceAsStream(resource);
//配置上下文对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
SqlSession session = factory.openSession();
List<User> selectList = session.selectList("selectId");
//遍历
for (User user : selectList) {
System.out.println(user);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}