首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Java后端开发博客

    MyBatis-Plus 通用枚举

    # MyBatis-Plus 通用枚举 数据库添加字段sex 创建通用枚举类型 配置扫描通用枚举 测试 结果 表中的有些字段值是固定的,例如性别(男或女),此时我们可以使用MyBatis-Plus的通用枚举来实现 # 数据库添加字段sex ALTER TABLE t_user ADD sex INT(11) # 创建通用枚举类型 /** * @author frx * @version 1.0 * @date 2022/4/20 14:08 */ @Getter public enum SexEnum { MALE(1,"男"), FEMALE(2,"女"); @EnumValue #配置mybatis日志 mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #设置mybatis-plus的全局配置 global-config: db-config: # 配置MyBatis-Plus操作表的默认前缀 table-prefix

    36530编辑于 2022-12-25
  • 来自专栏SpringBoot教程

    MyBatis-Plus通用枚举

    创建通用枚举类型 package com.atguigu.mp.enums; import com.baomidou.mybatisplus.annotation.EnumValue; import SexEnum(Integer sex, String sexName) { this.sex = sex; this.sexName = sexName; } } 配置扫描通用枚举 mybatis-plus: configuration: # 配置MyBatis日志 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl global-config: db-config: # 配置MyBatis-Plus操作表的默认前缀 table-prefix: t_ # 配置MyBatis-Plus void testSexEnum(){ User user = new User(); user.setName("Enum"); user.setAge(20); //设置性别信息为枚举

    26230编辑于 2023-02-16
  • 来自专栏JAVA

    MyBatis-Plus之枚举

    MyBatis-Plus之枚举 博主 默语带您 Go to New World. 在MyBatis-Plus中,对枚举(Enum)的支持相对比较方便,可以更容易地将枚举类型映射到数据库中的字段。 以下是关于MyBatis-Plus中枚举的一些要点: 枚举映射: MyBatis-Plus允许将Java中的枚举类型映射到数据库中的字段。 通过@EnumValue和@EnumValue注解,您可以指定枚举的值和数据库字段之间的映射关系。 枚举类型: 在MyBatis-Plus中,枚举类型可以用于作为实体类中的字段类型。 代码示例: 假设您有一个订单实体类,其中包含一个枚举类型的支付状态。您可以使用MyBatis-Plus来映射这个枚举字段到数据库中。

    52510编辑于 2024-11-20
  • 来自专栏用户1337634的专栏

    自定义枚举 --- MyBatis字段映射

    MyBatis自带的EnumTypeHandler转换为文字保存在数据库,EnumOrdinalTypeHandler使用的是序号,它们的一致性都可能被轻易地破坏,所以最好的办法是自定义一个int类型 " /> </bean> 自定义枚举 package com.tenmao.utils.model; import com.tenmao.utils.mybatis.CodedEnum; public enum Weekday implements CodedEnum { MONDAY(1), TUESDAY(2), WEDNESDAY(3), THURSDAY(4) getCode() { return code; } } ps: 参考资料写得特别好,我之所以重新写了一下,是资料写得有点啰嗦,比如子类的注册,其实都是自动的,不需要再额外配置 自定义枚举系列 自定义枚举 --- Gson转换 自定义枚举 --- Swagger文档展示 参考 如何在MyBatis中优雅的使用枚举

    2.5K11发布于 2019-03-27
  • 来自专栏Dissecting Unreal

    UE4枚举

    UE4在C++中和标准的枚举是一样的,支持两种写法,enum和enum class /** Parameter enum for CastChecked() function, defines when ,只在枚举作用域内有效,使用时需要在之前加枚举类型名和两个冒号。 UE4为了解决enum class在做位运算时不方便的问题,提供了一个宏和一些模板函数 // Defines all bitwise operators for enum classes so it 如果枚举不想只在C++中使用,还想暴露给蓝图使用,那么可以通过在枚举定义之前使用UENUM宏,在枚举定义内部使用UMETA来声明,这样UHT会在编译时自动生成辅助代码,运行时会创建一个UEnum的UObject 对象,将枚举自动注册到了虚拟机中。

    2.1K20发布于 2021-10-22
  • 来自专栏Nicky's blog

    Mybatis自定义枚举类处理器优雅地使用枚举

    在和前端开发对接接口过程中经常发现需要一些枚举类的字典参数,虽然可以通过swagger在线文档给前端开发,不过可以直接返回枚举的编码和字典值就可以更直观,所以在项目里怎么实现? 可以通过Mybatis的一些接口,自定义枚举类的处理器实现 环境准备 开发环境 JDK 1.8 SpringBoot2.2.1 Maven 3.2+ 开发工具 IntelliJ IDEA smartGit shape = JsonFormat.Shape.OBJECT) public interface IEnum { String getCode(); String getName(); } 枚举工具类 写一个枚举工具类,根据code和name返回对应枚举类,根据反射获取getEnumConstants,循环匹配 package com.example.springboot.mybatis.common.enumhandler : true 项目中使用 需要的枚举类就继承IEnum接口 package com.example.springboot.mybatis.bean; import com.example.springboot.mybatis.common.enumhandler.IEnum

    1.5K30编辑于 2023-05-26
  • 来自专栏技术进阶之路

    Mybatis-Plus 通用枚举类型的使用

    Mybatis-Plus 中我们可以使用枚举类型来完成这一操作,他能自动将数据库里的字段映射成我们需要的字段,例如性别,新建枚举类如下: @Getter public enum GenderType EnumValue:标注哪一个字段是数据库里的字段; @JsonValue:标注要开启自定义序列化返回值; toString:具体的返回值; 同时我们需要在与数据库关联的实体类中修改类型,将性别字段改为枚举类型 private String name; /** * 性别 */ private GenderType gender; } 在配置文件中配置扫描注解类型: #mybatis-plus 配置 mybatis-plus: type-enums-package: com.demo.test.enums 这个时候再去查询,返回的结果就直接是我们在枚举类型中定义的 name 值了。

    2.5K60发布于 2021-08-24
  • 来自专栏技术杂货店

    Mybatis4】-- 关于Mybatis别名定义

    DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd 那就是别名,mybatis可以让我们起一个别名给它,别名定义是在mybatis.xml主配置文件中。 ,主要是配置了log日志相关的信息: log4j.prpp log4j.rootLogger=DEBUG, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppende log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = debug log4j.logger.java.sql.ResultSet =debug 主配置文件mybatis.xml,这个是mybatis的入口配置文件: <?

    71800发布于 2020-11-28
  • 来自专栏Web 技术

    【Swift4】(7) 枚举 | 应用

    枚举基本使用 表述一组值 枚举相当于创建了一种新的数据类型,而类型的取值由里面的case值进行表征 enum CompassPoint { // 大写开头 case north,west,east it is not an 'a'") } 灵活使用 enum Barcode { case UPCA(Int,Int,Int,Int) case QRCode(String) //将枚举变量 QRCode关联为String类型 } let productCodeA = Barcode.UPCA(4, 102, 306, 8) let productCodeB = Barcode.QRCode //"UPC-A with value of 4, 102, 306,8.

    30820编辑于 2023-10-07
  • 来自专栏算法之名

    MyBatis数据库字段映射Java枚举

    有时候我们需要将数据库的字段对Java的枚举类型进行映射,比如说我们有一个汽车配件类型的枚举 public enum ProductType implements Localisable { TYPE1 this.value = value; } @Override public String getValue() { return this.value; } } 该枚举类型实现了一个接口 public interface Localisable { String getValue(); } 有一个配件分类的实体类,包含了该枚举字段(此处只包含部分字段属性) /** * 配件分类 DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-

    2K20发布于 2019-08-20
  • 来自专栏测试基础

    MyBatis-4MyBatis之动态SQL

    MyBatis之动态SQL 本文内容来自Mybatis文档,在此整理分享给大家。 MyBatis 的强大特性之一便是它的动态 SQL。 针对这种情况,MyBatis 提供了 choose 元素,它有点像 Java 中的 switch 语句。 MyBatis 有一个简单的处理,这在 90% 的情况下都会有用。而在不能使用的地方,你可以自定义处理方式来令其正常工作。 4 bind bind 元素可以从 OGNL 表达式中创建一个变量并将其绑定到上下文。 > parameterType); } 一旦设定了自定义语言驱动,你就可以在 mybatis-config.xml 文件中将它设置为默认语言: <typeAliases> <typeAlias type

    64230发布于 2020-09-16
  • 来自专栏技术杂货店

    Mybatis4】-- Mybatis关于别名的定义

    DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd 那就是别名,mybatis可以让我们起一个别名给它,别名定义是在mybatis.xml主配置文件中。 ,主要是配置了log日志相关的信息: log4j.prpp log4j.rootLogger=DEBUG, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = debug log4j.logger.java.sql.ResultSet =debug 主配置文件mybatis.xml,这个是mybatis的入口配置文件: <?

    81810编辑于 2022-02-15
  • 来自专栏兜兜毛毛

    MyBatis plugins插件(4

    插件是MyBatis对外开放了四个接口,可以用于自定义扩展。 prepare (BaseSatementHandler)SQL预编译 parameterize 设置参数 batch 批量处理 update 增删改操作 query 查询操作 以上4个接口在 MyBatis中的工作流程如下图: ? MyBatis实现自定义插件 创建自定义插件主要步骤: 编写插件代码实现Interceptor接口,设置要代理的方法 在mybatis-config.xml中注册插件 下边来简单做一个分表的插件,根据主键 简单抽出MyBatis代理链核心代码地址 核心类说明: ?

    74410发布于 2021-04-15
  • 来自专栏博客迁移同步

    枚举{1,2,3,4}子集

    #include <stdio.h> int main() { int X[4] = {}, i, count = 0; int n = 4; for(X[4]=0;X[4]<2;X[4]++)

    18410编辑于 2023-05-06
  • 来自专栏数据分析与挖掘

    mybatis扩展之类型处理器(枚举类型处理)

    EmpStatus empStatus=EmpStatus.LOGOUT; private Department dept; EmpStatus.java package com.gong.mybatis.bean ; import com.gong.mybatis.bean.Employee; import com.gong.mybatis.dao.EmployeeMapper; import com.gong.mybatis.mapper.EmployeeMapperDynamicSql BaseJdbcLogger.java:145) DEBUG 01-23 15:27:43,472 <== Updates: 1 (BaseJdbcLogger.java:145) 保存成功:9 数据库中: 插入的是枚举类型的值 我们也可以在mybatis全局配置文件中处理枚举类型的Handler: <typeHandlers> <typeHandler handler="org.apache.ibatis.type.EnumOrdinalTypeHandler " javaType="com.gong.<em>mybatis</em>.bean.EmpStatus"/> </typeHandlers> 再进行测试,输出结果为: DEBUG 01-23

    73410发布于 2020-08-26
  • 来自专栏mathor

    枚举+优化(4)——哈希表优化实例2

    例3.四平方和 思路1:枚举abcd,判断a^2^+b^2^+c^2^+d^2^是否等于N  分析规模  a:0 ~ sqrt(500000 / 4)  b:0 ~ sqrt(500000 / 3 =10^8^ 思路2:枚举abc,判断N-a^2^-b^2^-c^2^是不是完全平方数  分析规模  a:0 ~ sqrt(500000 / 4)  b:0 ~ sqrt(500000 / 3)  c:0 ~ sqrt(500000 / 2)  总枚举量10^9^,依然超时 问题:只枚举ab,那么余下R=N-a^2^-b^2^,能否快速求出c^2^+d^2^=R的解? (或者快速判断无解)  例如:N=5,当前枚举量a=b=0,能不能快速求出解c=1,d=2。 然后只枚举i和j,也就是给小Hi的两袋金币,通过查哈希表得到小Ho的两袋金币一共有多少种选法。

    82950发布于 2018-06-08
  • 来自专栏波波烤鸭

    mybatis教程4(动态SQL)

    动态SQL语句   MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦。 虽然在以前使用动态 SQL 并非一件易事,但正是 MyBatis 提供了可以被用在任意 SQL 映射语句中的强大的动态 SQL 语言得以改进这种情形。    在 MyBatis 之前的版本中,有很多元素需要花时间了解。MyBatis 3 大大精简了元素种类,现在只需学习原来一半的元素便可。 MyBatis 采用功能强大的基于 OGNL 的表达式来淘汰其它大部分元素。 1. if语句   动态 SQL 通常要做的事情是根据条件包含 where 子句的一部分。 4.set语句   set主要也是用来解决更新问题的。 <update id="updateBookById"> update t_book <set> <if test="author!

    69630发布于 2019-04-02
  • 来自专栏姚红专栏

    MyBatis4:动态SQL

    什么是动态SQL MyBatis的一个强大特性之一通常是它的动态SQL能力。 通常使用动态SQL不可能是独立的一部分,MyBatis当然使用一种强大的动态SQL语言来改进这种情形,这种语言可以被用在任意映射的SQL语句中。 动态SQL元素和使用JSTL或其它相似的基于XML的文本处理器相似,在MyBatis之前的版本中,有很多元素需要了解,MyBatis3大大地提升了它们,现在用不到原先一半的元素就能工作了,MyBatis 另外一个解决办法是利用MyBatis中的一个简单处理方式,这在90%情况下都会有用而且。而在不能使用的地方,可以以自定义方式处理。 比如(上面的例子都是我在自己电脑上跑通过的例子,这个例子就直接复制MyBatis官方文档上的内容了): <select id="selectPostIn" resultType="domain.blog.Post

    56820发布于 2019-09-11
  • 来自专栏捞月亮的小北

    4. SpringBoot整合mybatis

    回顾 Spring 整合 Mybatis ​Spring​ 整合 Mybatis​ 需要定义很多配置类 ​SpringConfig​ 配置类 导入 JdbcConfig​ 配置类 导入 MybatisConfig​ SpringBoot 整合 mybatis 创建模块 ​ ​ ‍ 定义实体类 public class Book { private Integer id; private String 原因是 Mybatis​ 会扫描接口并创建接口的代码对象交给 Spring​ 管理,但是现在并没有告诉 Mybatis​ 哪个是 dao​ 接口。

    25810编辑于 2023-12-01
  • 来自专栏测试基础

    MyBatis-4MyBatis批量insert、update、delete数据

    MyBatis为批量操作数据提供了非常便利的方案。 当然,也可以在程序中自己拼接sql语句,在dao层传入该sql语句作为参数。要注意的是,采用这种方式时,不能使用 # 而是要使用 $。 mybatis xml中的写法如下: <update id="updateStudentBatch" parameterType="java.util.List"> <foreach collection END, age = CASE id WHEN 1 THEN 20 WHEN 2 THEN 21 END WHERE id IN (1,2) **mybatis

    3.7K40发布于 2020-09-16
领券