目录
[1 创建user 表,添加数据](#1 创建user 表,添加数据)
[2 创建模块,导入坐标](#2 创建模块,导入坐标)
[3 编写 MyBatis 核心配置文件 --->替换连接信息 解决硬编码问题](#3 编写 MyBatis 核心配置文件 --->替换连接信息 解决硬编码问题)
[4 编写 SQL映射 --> 统一管理SQL语句 ,解决 硬编码问题](#4 编写 SQL映射 --> 统一管理SQL语句 ,解决 硬编码问题)
[5 编码](#5 编码)
[1 定义实体类](#1 定义实体类)
[2 加载 核心配置文件,获取sqlSessionFactory 对象](#2 加载 核心配置文件,获取sqlSessionFactory 对象)
[3 获取 SqlSession 对象 ,执行 SQL语句](#3 获取 SqlSession 对象 ,执行 SQL语句)
[4 执行,释放资源](#4 执行,释放资源)
[6 运行](#6 运行)
本篇博客,我拿查询user表中所有数据 ,进行举例!!!
前言
MyBatis快速入门,是基于Maven来构建项目。
步骤
1 创建user 表,添加数据
这一步,我们在数据库图形界面工具执行
代码:
sql
create table user(
id int auto_increment primary key ,
name varchar(20) not null ,
age int not null ,
email varchar(20)
);
INSERT INTO `user` (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');
大家在添加数据时,可以根据自己的心意任意添加,本篇博客,主要通过Mybatis查询表的数据,帮助大家快速入门。
2 创建模块,导入坐标
向pom文件中添加依赖:
大家可以打开 MyBatis官网:mybatis的依赖
注意:
1 官网中,并没有明确版本号。 大家可以先试试idea会不会让你自动添加合适的版本号。如果没有,可以选择我下方表示的版本。
2将依赖代码复制到pom文件中去后,点击右侧的图标,等待加载
----- 如果加载不成功:
1 多刷新几次或选择更高版本的
2 浏览器查询原因
步骤
- 添加mybatis 依赖
- 添加数据库驱动 (MySQL)依赖
java
<dependencies>
<!-- MyBatis 核心 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.14</version>
</dependency>
<!-- 数据库驱动,例如MySQL -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>
</dependencies>
3 编写 MyBatis 核心配置文件 --->替换连接信息 解决硬编码问题
配置文件命名:一般是 mybatis-config.xml 在resources文件夹下
看官网中,发现 :MyBatis 核心配置文件的代码
真正需要修改的: dataSource
标签中,修改数据库的连接,注册驱动(driver,url,usrname,password)
代码如下
XML<dataSource type="POOLED"> <!-- 数据库连接信息--> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql:///ss?useSSL=false"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource>
------ ss 是数据库名
resource下的路径,是SQL映射文件路径。现在,在这里,暂时不做修改
4 编写 SQL映射 --> 统一管理SQL语句 ,解决 硬编码问题
看官网发现:
映射文件命名:UserMapper.xml 在resources文件夹下
namespace :名称空间
修改的是我划线的:
注意:如果你书写SQL语句,爆红 。并不是说你错了,而是警告提示。
采取行动:鼠标点击idea右上角的一个添加,选择MySQL数据库
代码如下
XML
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namespace :名称空间-->
<mapper namespace="tt">
<select id="selectAll" resultType="com.entity.User">
select * from user ;
</select>
</mapper>
现在,返回mybatis-config.xml,添加映射文件路径,由于两个文件都在resources文件夹下,所以直接是 文件名:UserMapper.xml
5 编码
1 定义实体类
在这里我是先创建一个实体包(entity)包下创建user类
- 添加成员变量:是表中的字段
- 添加 Getter 和Setter 方法,toString方法
代码如下
java
package com.entity;
public class User {
Integer id;
String name;
Integer age;
String email;
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 Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
", email='" + email + '\'' +
'}';
}
}
2 加载 核心配置文件,获取sqlSessionFactory 对象
首先 创建一个类 ,类名自己定义 。我是**:MybatisDemo 类**
其次 大家看官网
复制粘贴代码,到你创建的类,抛出异常
resource 下的是MyBatis 核心配置文件 的文件名:mybatis-config.xml
代码如下
java
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
3 获取 SqlSession 对象 ,执行 SQL语句
代码如下
java
//获取sqlSession对象,用来执行SQL
SqlSession sqlSession = sqlSessionFactory.openSession();
4 执行,释放资源
代码如下
java
//执行SQL
List<User> user= sqlSession.selectList("tt.selectAll");
System.out.println(user);
//释放资源
sqlSession.close();
全图可以参照,下面
6 运行
打印 你查询的数据