将查询出来数据中相对应的字段根据枚举类更改为其中文内容

🐓1.通过mapper.xml文件中的内容使用case+when进行更换字段内容

SELECT case  user_type
when '101000' then '李明'
when '101001' then '王丽'
when '101002' then '王小黑'
when '101003' then '王大黑'
when '101004' then '超级大王'
when '101005' then '小董'
else ''
end as '别称'
from 表名

虽然简单但是不推荐,会增加sql的查询时间,建议使用第二种方法,在业务层进行处理

🐓2.创建对应枚举类

第一步创建枚举类

public enum UserType {

    Enum1("101000","李明"),
    Enum2("101001","王丽"),
    Enum3("101002","王小黑"),
    Enum4("101003","王大黑"),
    Enum6("101004","超级大王"),
    Enum7("101005","小董");

    private String val;
    private String name;
	//生成get方法
    UserType(String itemCode, String name) {
        this.val = itemCode;
        this.name = name;
    }

    public String getVal() {
        return val;
    }

    public String getName() {
        return name;
    }
    
    //创建根据val值进行获取name值的方法
    public static String getUserTypeName(String val) {
        return Arrays.stream(UserType.values())
                .filter(userType -> userType.getVal().equals(val))
                .map(UserType::getName)
                .findFirst()
                .orElse(null);
    }
}

第二步查询sql并查询相对应的字段的数据

//执行其相对应的dao层查询业务相关数据
List<Map<String, Object>> billList=chargeBillDao.findByBill(参数)

第三步进行遍历

//将返回内容重新遍历,然后通过枚举类中的方法进行内容的替换
billList.forEach(bill->bill.put("对应字段",UserType.getUserTypeName(bill.get("对应字段名")))

  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

今天背单词了吗980

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值