新建springboot工程
导入依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
数据库,建表
drop table if exists o_user;
create table o_user(
uid bigint(20) not null auto_increment,
user_name varchar(20) not null,
age int(11),
sex tinyint default 1 comment '性别,0女,1男',
email varchar(50),
is_deleted tinyint default 0 comment '逻辑删除,0未删除,1删除',
primary key(uid)
);
insert into o_user(user_name,age,email) values ('a1',22,'a1@a.com');
insert into o_user(user_name,age,email) values ('a2',23,'a2@a.com');
insert into o_user(user_name,age,email) values ('b1',32,'b1@a.com');
insert into o_user(user_name,age,email) values ('b2',12,'b2@a.com');
insert into o_user(user_name,age,email) values ('c1',24,'c1@a.com');
配置文件
application.properties
#springboot默认数据源
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimeZone=UTC
spring.datasource.username=root
spring.datasource.password=mysql123
#默认日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
#扫描通用枚举的包
mybatis-plus.type-enums-package=com.shrimpking.enums
实体类
User.java
package com.shrimpking.pojo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.shrimpking.enums.SexEnum;
import lombok.Data;
/**
* Created by IntelliJ IDEA.
*
* @Author : Shrimpking
* @create 2023/6/10 18:34
*/
@Data
@TableName("o_user")
public class User
{
@TableId(value = "uid",type = IdType.AUTO)
private Long id;
private String userName;
private Integer age;
private SexEnum sex;
private String email;
@TableLogic
private Integer isDeleted;
}
sexEnum.java
package com.shrimpking.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.Getter;
/**
* Created by IntelliJ IDEA.
*
* @Author : Shrimpking
* @create 2023/6/10 18:38
*/
@Getter
public enum SexEnum
{
//性别
MALE(1,"男"),
FEMALE(0,"女");
/**
*将需要保存到数据库的项,标注上EnumValue
*/
@EnumValue
private Integer sex;
private String sexName;
SexEnum(Integer sex, String sexName)
{
this.sex = sex;
this.sexName = sexName;
}
}
mapper接口
UserMapper.java
package com.shrimpking.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.shrimpking.pojo.User;
import org.springframework.stereotype.Repository;
/**
* Created by IntelliJ IDEA.
*
* @Author : Shrimpking
* @create 2023/6/10 18:44
*/
@Repository
public interface UserMapper extends BaseMapper<User>
{
}
测试
package com.shrimpking;
import com.shrimpking.enums.SexEnum;
import com.shrimpking.mapper.UserMapper;
import com.shrimpking.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
/**
* Created by IntelliJ IDEA.
*
* @Author : Shrimpking
* @create 2023/6/10 18:43
*/
@SpringBootTest
public class EnumTest
{
@Autowired
private UserMapper userMapper;
@Test
public void test()
{
User user = new User();
user.setUserName("小红");
user.setAge(11);
user.setEmail("hong@h.com");
user.setSex(SexEnum.MALE);
int result = userMapper.insert(user);
System.out.println("result: " + result);
}
}