一:创建原始数据库
二:创建mybatis_1文件,搭建原始Mybatis框架
1:引入相关依赖
2:引入相关资源(config核心配置文件、db、log4j)
3:\src\main\java分别创建包(实体包、映射包、测试包)并创建相应的class类文件
4:创建实体包与映射链接接口
5:创建测试类(find查)
三:在Idea中写Mysql的增删改查
一:创建原始数据库

二:创建mybatis_1文件,搭建原始Mybatis框架

1:引入相关依赖

代码如下:xml
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.32</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.example</groupId>
<artifactId>mybatis_1</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.12</version>
</dependency>
</dependencies>
2:引入相关资源(config核心配置文件、db、log4j)

代码如下:
mybatis-config:
<?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>
<!-- 环境配置 -->
<!-- 加载类路径下的属性文件 -->
<properties resource="db.properties"/>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<!-- 数据库连接相关配置 ,db.properties文件中的内容-->
<dataSource type="POOLED">
<property name="driver" value="${mysql.driver}"/>
<property name="url" value="${mysql.url}"/>
<property name="username" value="${mysql.username}"/>
<property name="password" value="${mysql.password}"/>
</dataSource>
</environment>
</environments>
<!-- mapping文件路径配置 -->
<mappers>
<mapper resource="mapper/UserMapper.xml"/>
</mappers>
</configuration>
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>
db代码:mybatis1是你创建数据库的名
mysql.driver=com.mysql.cj.jdbc.Driver mysql.url=jdbc:mysql://localhost:3306/mybatis1?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false mysql.username=root mysql.password=123456
3:\src\main\java分别创建包(实体包、映射包、测试包)并创建相应的class类文件

①.pojo的class代码:
package org.example.pojo;
public class Users {
private int id;
private String name;
private int age;
private String sex;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public String toString() {
return "Users{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
", sex='" + sex + '\'' +
'}';
}
}
②、Mapper和Utils的代码暂时不填
4:创建实体包与映射链接接口

UsersMapper代码如下:
<?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为映射的根节点-->
<!-- mapper为映射的根节点,namespace指定Dao接口的完整类名
mybatis会依据这个接口动态创建一个实现类去实现这个接口,
而这个实现类是一个Mapper对象-->
<mapper namespace="com.example.pojo.User">
<!--id ="接口中的方法名"
parameterType="传入的参数类型"
resultType = "返回实体类对象,使用包.类名"-->
<select id="findById" parameterType="int"
resultType="com.example.pojo.User">
select *
from users
where id = #{id}
</select>
</mapper>
5:创建测试类

代码如下:
@Test
public void testFindUserById(){
SqlSession session = MyBatisUtil.getSqlSession();
UserMapper mapper = session.getMapper(UserMapper.class);
User user = mapper.findUserById(1);
System.out.println("user = " + user);
}
三:在Idea中写Mysql的增删改查
①:写映射类:

②:写映射文件:

<insert id="insertEmp" parameterType="Employee">
insert into employee values(null, #{name}, #{age}, #{position});
</insert>
<!--public int updateEmpById(Employee employee);-->
<update id="updateEmpById" parameterType="employee">
update employee set name=#{name}, age=#{age}, position = #{position} where id = #{id}
</update>
<!--public int deleteEmpById(int id);-->
<delete id="deleteEmpById" parameterType="int">
delete from employee where id=#{id}
</delete>
③:写测试类:

public class TestUser {
@Test
public void testFindUserById(){
SqlSession session = MyBatisUtil.getSqlSession();
UserMapper mapper = session.getMapper(UserMapper.class);
User user = mapper.findUserById(1);
System.out.println("user = " + user);
}
@Test
public void testInsertEmp(){
SqlSession session = MyBatisUtil.getSqlSession();
UserMapper mapper = session.getMapper(UserMapper.class);
User emp = new User();
emp.setUname("小米");
emp.setUage(24);
emp.setUid(3);
int result = mapper.insertUser(emp);
}
@Test
public void testUpdateEmp(){
SqlSession session = MyBatisUtil.getSqlSession();
UserMapper mapper = session.getMapper(UserMapper.class);
User emp = new User();
emp.setUid(4);
emp.setUname("小明");
emp.setUage(36);
int result = mapper.updateUserById(emp);
}
@Test
public void testDeleteEmpById(){
SqlSession session = MyBatisUtil.getSqlSession();
UserMapper mapper = session.getMapper(UserMapper.class);
int result = mapper.delUserById(5);
}
}
执行结果:

本文详细介绍了如何创建原始数据库,然后逐步构建Mybatis框架,包括引入相关依赖、配置核心配置文件、创建实体类、映射接口以及测试类。最后展示了在Idea中进行MySQL的增删改查操作。
1125





