一、用户实体类
package com.fairy.mybatisdemo2.entity;
import java.io.Serializable;
/**
* 用户实体类
*/
public class User implements Serializable {
// 字段
private int uid;
private String uname;
private String usex;
// 访问器
public int getUid() {
return uid;
}
public void setUid(int uid) {
this.uid = uid;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getSex() {
return usex;
}
public void setSex(String sex) {
this.usex = sex;
}
// 构造器
public User() {
}
public User(int uid, String uname, String sex) {
this.uid = uid;
this.uname = uname;
this.usex = sex;
}
// 重写toSering方法
@Override
public String toString() {
return "User{" +
"uid=" + uid +
", uname='" + uname + '\'' +
", usex='" + usex + '\'' +
'}';
}
}
实体类代码
二、数据访问类UserDao.java:
package com.fairy.mybatisdemo2.dao;
import com.fairy.mybatisdemo2.entity.User;
import java.util.List;
/**
* 数据访问接口
*/
public interface UserDao {
/** 根据id查询一条数据 */
User findById(int id);
/** 查询全部数据 */
List<User> findAll();
/** 模糊查询 */
List<User> likeName(String name);
/** 添加数据 */
int addUser(User user);
/** 修改数据 */
int updateUser(User user);
/** 删除数据 */
int deleteUser(int uid);
}
dao包代码
三、定义一个工具类,方便复用,XML映射器UserDao.xml:
工具类代码
四、定义配置文件(application.yaml):
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: 123456
url: jdbc:mysql://localhost:3306/xiaom?serverTimezone=GMT&useUnicode=true&characterEncoding=utf-8
mybatis:
type-aliases-package: com.fairy.mibackground.entity
mapper-locations: classpath:/mapper/*.xml
配置文件代码
五、配置映射接口所在的包:
package com.fairy.mibackground;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.fairy.mibackground.dao")
public class MibackgroundApplication {
public static void main(String[] args) {
SpringApplication.run(MibackgroundApplication.class, args);
}
}
MibackgroundApplication中的代码
六、单元测试:
package com.fairy.mybatisdemo2;
import com.fairy.mybatisdemo2.dao.UserDao;
import com.fairy.mybatisdemo2.entity.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class Mybatisdemo2ApplicationTests {
@Autowired
UserDao userDao;
/**
* 根据id查询某个数据
*/
@Test
public void findByIdTest(){
System.out.println(userDao.findById(6));
}
/**
* 查询所有的数据
*/
@Test
public void findAllTest(){
System.out.println(userDao.findAll());
}
/***
* 模糊查询
*/
@Test
public void likeNameTest(){
System.out.println(userDao.likeName("tao"));
}
/**
* 添加数据
*/
@Test
public void addUserTest(){
User user = new User();
user.setUid(9);
user.setUname("淘淘");
user.setSex("男");
System.out.println(userDao.addUser(user));
}
/**
* 修改数据
*/
@Test
public void updateUserTest(){
User user;
// 首先查询id出来
user = userDao.findById(7);
// 然后修改
user.setUname("桃桃");
user.setSex("男");
// 执行方法
System.out.println(userDao.updateUser(user));
}
/**
* 删除数据
*/
@Test
public void deleteUpdateTest(){
System.out.println(userDao.deleteUser(5));
}
}
测试类代码
七、测试结果: