当前位置: 首页 > wzjs >正文

合肥做网站web0551手机google官网注册账号入口

合肥做网站web0551,手机google官网注册账号入口,南京市网站,拓者设计吧会员有啥区别文章目录 枚举简单枚举带构造函数的枚举 结合mybatis-plus实现枚举映射存储配置使用 参考学习文章 需求,就是我们需求统一管理字段,比如我们规定a是开始 b是结束,那么在数据库存储的时候就可以存储单个字符 枚举 我们先来了解下Java的枚举Java的枚举我简单理解就是特殊的类,类…

文章目录

  • 枚举
    • 简单枚举
    • 带构造函数的枚举
  • 结合mybatis-plus实现枚举映射存储
    • 配置
    • 使用
  • 参考学习文章

  • 需求,就是我们需求统一管理字段,比如我们规定a是开始 b是结束,那么在数据库存储的时候就可以存储单个字符

枚举

  • 我们先来了解下Java的枚举
  • Java的枚举我简单理解就是特殊的类,类所有的写法,枚举也可以有~

简单枚举

public enum enum1 {RED, GREEN, BLANK, YELLOW;//main函数为测试内容,你可以直接删除才是真正的枚举类public static void main(String[] args) {System.out.println(enum1.BLANK);//输出BLANK}
}

带构造函数的枚举

  • 就是可以存储多个数据啦
    • 需求就是我们希望这个枚举可以有多个信息,而不是变量名和值一样,比如我规定a代表code为200,message为"成功’这种
//你可以理解为带构造函数的存储的信息如下~
a -> {code:200,message:"成功",
}
public enum enum2 {//注意,这里不是构造函数名称,而是自定义的枚举名称,如SUCCESS,FAILSUCCESS(200,"成功"),//注意要逗号分隔,最后一个不添加逗号FAIL(500,"失败")//分号最好另起一行,隔断作用;//添加成员变量private int code;//代码private String message;//消息//添加构造函数enum2(int code,String message){this.code = code;this.message = message;}//添加Getter,当然你也可以使用lombokpublic int getCode(){return this.code;}public String getMessage(){return this.message;}//main函数为测试内容,你可以直接删除才是真正的枚举类public static void main(String[] args) {enum2 one = enum2.FAIL;System.out.println(one.getCode());//输出500System.out.println(one.getMessage());//输出失败}
}

结合mybatis-plus实现枚举映射存储

  • 就是数据库存储a,然后用户看到的是更复杂的数据
    • 比如数据库存储1 后面查询返回给用户的实际是"已开始"
  • 目前依赖如下,可以看到mybatis-plus为3.5.12

配置

  • 貌似3.5不需要配置什么枚举扫描类的包和handler了,只需要添加@EnumValue和@JsonValue就可以

使用

  • 创建枚举
    • 这里创建了枚举EnumTest3
@Getter
public enum EnumTest3 {END(-1,"中止"),STARTED(1,"已开始"),COMPLETE(2,"已结束"),PROCESS(3,"流程中");;@EnumValueprivate int code;//实际存入数据库的//@JsonValue记得添加,否则不会自动映射!@JsonValueprivate String status;//用户看到的EnumTest3(int code,String status){this.code = code;this.status = status;}
}
  • entity更换为枚举类型
    • entity就是数据库和实体类的对应
import com.example.demo_6.enums.EnumTest3;
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("enum_test")
public class EnumTest {@TableId(type = IdType.AUTO)private int id;private EnumTest3 status;//测试枚举字段
}
  • TestEnumReq类内容
package com.example.demo_6.Req;import com.example.demo_6.enums.EnumTest3;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@AllArgsConstructor
@NoArgsConstructor
public class TestEnumReq {//用户传递过来的数据private EnumTest3 status;
}
  • controller测试
package com.example.demo_6.controller;import com.example.demo_6.Req.TestEnumReq;
import com.example.demo_6.entity.EnumTest;
import com.example.demo_6.enums.EnumTest1;
import com.example.demo_6.enums.EnumTest3;
import com.example.demo_6.mapper.EnumTestMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.List;@RestController
@RequestMapping("/enumTest")
public class TestEnumController {@AutowiredEnumTestMapper enumTestMapper;@PostMapping("/insert")//这个是测试前端传递的参数有没有正确存储到数据库//这样子前端可以传1也可以传递"已开始"//这样子前端传递 "已开始"就只会在数据库存储1 , "已结束"就只会在数据库存储2public int one(@RequestBody TestEnumReq enumReq) {EnumTest test1 = new EnumTest();test1.setStatus(enumReq.getStatus());return enumTestMapper.insert(test1);}@PostMapping("/list")//这个是测试返回给前端的数据有没有映射上去,比如数据库里面是1,返回给用户的"已开始"public List<EnumTest> list() {return enumTestMapper.selectList(null);}
}
  • 数据库内容

  • 调用**/enumTest/list**接口输出内容

参考学习文章

  • https://juejin.cn/post/7029211885534707725
  • https://baomidou.com/guides/auto-convert-enum/#%E6%96%B9%E5%BC%8F%E4%B8%80%E6%B3%A8%E8%A7%A3%E6%A0%87%E8%AE%B0
http://www.dtcms.com/wzjs/376234.html

相关文章:

  • 做医采官方网站百度权重1
  • 贵州省建设厅网站造价工程信息网免费推广的平台都有哪些
  • 枣庄建设路小学网站关键词优化快速
  • 建站快车帮助新媒体运营怎么自学
  • 网站建设公司生存常用的搜索引擎有
  • 学校网站群建设全搜网
  • app推广一手单平台合肥seo优化排名公司
  • 新手做网站视频教程网站排名优化公司哪家好
  • 学ps网课平台哪个好seo短视频
  • 日本做h动漫电影网站有哪些网站策划方案书
  • 如何做公证网站网页发布时间企业网站推广渠道
  • 哪些公司做网站比较好论坛企业推广
  • 自己做动漫头像的网站海淀区seo搜索引擎优化企业
  • 深圳网站建设 乐云践新怎么做网络营销
  • wordpress 代码 视频seo排名的方法
  • 提交网站收录电商培训机构需要什么资质
  • 网站开发计入管理费用哪个明细宁波专业seo外包
  • 香港网站建设百度搜索结果
  • 统计网站建设沈阳seo团队
  • 网站开发与网页制作推广网络广告
  • 石家庄网站设计网站维护天眼查企业查询
  • 西双版纳傣族自治州政府官网长沙搜索排名优化公司
  • 洋桥网站建设山东工艺美术学院网站建设公司
  • 做易经类的网站百度网盘电脑网页版
  • 深圳品牌设计公司招聘济南网站seo公司
  • 网站标题title怎么写杭州网站优化流程
  • h5动画网站百度网络营销
  • 二手商品交易网站开发图片识别
  • 网站建设需要哪些人营业推广的方式有哪些
  • 小辰青岛网站建设seo推广网络