Java枚举类结合Mybatis-plus使用

枚举类的定义概念不做过多解释,这里只说在实际开发中的应用。
使用场景:前端传来的参数为“男”、“女”、“未知”,后台数据库保存的则为tinyint类型的1、2、3;

一、定义枚举类

(这里必须是value变量,mybatisplus里进行了对应的处理)

package com.tanhua.sso.enums;

import com.baomidou.mybatisplus.core.enums.IEnum;
import lombok.AllArgsConstructor;


@AllArgsConstructor
public enum SexEnums implements IEnum<Integer> {

    MAN(1, "男"),
    WOMAN(2, "女"),

    UNKNOWN(3, "未知");

    private Integer value;
    private String desc;


    public Integer getValue() {
        this.value = value;
        return value;
    }

    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }

    @Override
    public String toString() {
        return desc;
    }
}

二、在用户信息里定义枚举类

package com.tanhua.sso.pojo;

import com.tanhua.sso.enums.SexEnums;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserInfo extends BasePojo {
    private SexEnums sex; //===============================性别
    private Long id;
    private Long userId; //用户id
    private String nickName; //昵称
    private String logo; //用户头像
    private String tags; //用户标签:多个用逗号分隔
    private Integer age; //年龄
    private String edu; //学历
    private String city; //城市
    private String birthday; //生日
    private String coverPic; // 封面图片
    private String industry; //行业
    private String income; //收入
    private String marriage; //婚姻状态

}

三、向数据库插入数据

//这个是持久层里UserInfoMapper的实现
package com.tanhua.sso.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tanhua.sso.pojo.UserInfo;

public interface UserInfoMapper extends BaseMapper<UserInfo> {
}

====================================================================
package com.tanhua.sso;
import com.tanhua.sso.enums.SexEnums;
import com.tanhua.sso.mapper.UserInfoMapper;
import com.tanhua.sso.pojo.UserInfo;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import javax.annotation.Resource;

@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
public class HuanXinTest {
    @Resource
    private UserInfoMapper userInfoMapper;

    @Test
    public  void testEm(){
        UserInfo userInfo=new UserInfo();
  //SexEnums.MAN为男,SexEnums实现了mybatisplus里IEnum<Integer>接口
  //根据value字段处理成对应数值存入数据库。
        userInfo.setSex(SexEnums.UNKNOWN);
        userInfo.setCity("北京");
        userInfoMapper.insert(userInfo);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值