步骤
1. 创建项目
2. 创建数据库与表
3. 创建实体类
4. 引入jar包
5. 创建resources资源命令,并创建mappers目录,用于保存接口的映射文件
6. 创建db.properties,保存数据库连接的相关信息
7. 配置mybatis的全局配置文件
8. 测试
1.1先用idea新建一个空项目
路径自己选择,不要找不到就好
1.2然后在空项目里建web项目
文件 -> 新建 -> 新模块 -> Java EE -> Web应用程序
点击下一步,更改路径和项目名点击完成即可。
1.3在WEB-INF里新建文件夹classes与lib
classes文件夹用于存src文件夹里.java文件编译过后的字节码
lib用于存需要用到的.jar文件
1. 4配置classes和lib
文件->项目结构
先将项目的SDK选择好
然后选择模块->路径, 将编译器输出的输出目录和测试目录都改为刚才新建的classes文件夹
点击依赖 -> + ->JAR或目录
找到刚刚新建的lib目录,点击确定就会弹出下面的窗口,然后点击Jar Directory,再点击确定,最后再点击确定即可
2.创建数据库与表(自行配置好MySql和图形化工具)
数据库和表的创建
插入数据
3.创建实体类
实体类要和数据库的字段一一对应,所以实体类的创建如下
先建包和类,然后类里的代码如下
package com.rw.pojo;
import java.util.Date;
public class User {
private Integer id;
private String name;
private String password;
private Integer age;
private Date birthday;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", password='" + password + '\'' +
", age=" + age +
", birthday=" + birthday +
'}';
}
}
4.引入jar包
将准备好的mybatis.jar包和mysql-connector-java.jar包导入到lib,jar包可以去官网下载自己需要的版本
5.创建resources资源命令,并创建mappers目录,用于保存接口的映射文件
1.先建立与src同级的目录resources
2.将resources目录标记为 资源跟
在resources目录下新建mappers文件夹
在mappers文件夹下新建UserMapper.xml文件
映射文件 UserMapper.xml配置如下
<?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 里的配置不能乱写, 现在无所谓-->
<mapper namespace="UserMapper">
<!--
查询USER里的所有记录
resultType:配置查询的返回结果类型, 应当是实体类的相对路径->包名.类名
-->
<select id="getRecord" resultType="com.rw.pojo.User">
select * from USER
</select>
</mapper>
6. 创建db.properties,保存数据库连接的相关信息
在resources目录下创建db.properties文件
db.properties配置如下,注意自己的数据库名,登录的密码与账号
driver = com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306/db_mybatis
user = root
password = ****
7. 配置mybatis的全局配置文件
在resources目录下创建mybatis-config.xml文件
mybatis-config.xml配置如下
<?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>
<!--引入外部的db.properties文件-->
<properties resource="db.properties"/>
<!--配置连接数据库的开发环境environments
environments中可配置多组environment, 每个environment表示一种数据库的连接配置
default的取值是id的值, 表示默认使用该环境
-->
<environments default="mysql">
<!--MySQL-->
<environment id="mysql">
<!--配置事务管理,委托JDBC负责管理事务-->
<transactionManager type="JDBC"/>
<!--配置数据源,使用POOLED数据源,作用是创建数据库链接-->
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<!--引入外部接口映射文件-->
<mappers>
<mapper resource="mappers/UserMapper.xml"/>
</mappers>
</configuration>
8. 测试
在src下新建.com.rw.test包, 然后再建测试类UserMapperTest
UserMapperTest类代码如下
package com.rw.test;
import com.rw.pojo.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.*;
import java.io.InputStream;
import java.sql.Connection;
import java.util.List;
public class UserMapperTest {
public static void main(String[] args) {
try {
// 1.加载mybatis全局配置文件
InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
// 2.创建SqlSessionFactoryBuilder对象, 该对象表示SqlSessionFactory构造器, 用于创建SqlSessionFactory对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
// 3.创建SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(inputStream);
// 4.创建SqlSession对象,对数据库进行CRUD
SqlSession sqlSession = sqlSessionFactory.openSession();
// 5.执行相关方法
List<User> list = sqlSession.selectList("UserMapper.getRecord");
for (User user : list) {
System.out.println(user);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
运行结果