当前使用版本(必填,否则不予处理)

3.5.2 3.5.3.1 试过这两个版本

数据库版本 mysql 8.0.31 springboot: 2.7.6

该问题是如何引起的?(确定最新版也有问题再提!!!)

数据库字段类型是double,用生成工具得到的对象类型却是object,尝试其它如int、datetime等类型都转换正常。

配置代码

配置中如密码等敏感信息有修改


    /**
     * 数据源配置
     */
    private static final String URL = "jdbc:mysql://192.168.1.141:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true";
    private static final String USER_NAME = "root";
    private static final String PASSWORD = "password";
    private static final DataSourceConfig.Builder DATA_SOURCE_CONFIG = new DataSourceConfig.Builder(URL, USER_NAME, PASSWORD);

    private static final String JAVA_PATH = System.getProperty("user.dir") + "/db/src/main/java";

    private static final String XML_PATH = System.getProperty("user.dir") + "/db/src/main/resources/mapper";

    private static final List<String> TABLE_NAME_LIST = List.of("test");

    /**
     * 代码生成
     */
    public static void main(String[] args) {
        FastAutoGenerator.create(DATA_SOURCE_CONFIG)
                .globalConfig(builder -> builder
                        .author("mybatis-plus-generator")
                        .outputDir(JAVA_PATH)
                        .disableOpenDir()
                )
                .packageConfig(builder -> builder
                        .parent("cn.test")
                        .moduleName("db")
                        .entity("entity")
                        .mapper("mapper")
                        .xml("mapper.xml")
                        .service("service")
                        .serviceImpl("service.impl")
                        .controller("web")
                        .pathInfo(Collections.singletonMap(OutputFile.xml, XML_PATH))
                )
                .strategyConfig(builder -> builder
                        .addInclude(TABLE_NAME_LIST)
                        .addTablePrefix("t_", "sys_")
                )
                .strategyConfig(builder -> builder
                        .entityBuilder()
                        .enableLombok()
//                        .idType(IdType.ASSIGN_ID)
                        .idType(IdType.AUTO)
                        .logicDeletePropertyName("deletedFlag")
                        .addTableFills(new Property("deletedFlag", FieldFill.INSERT))
                        .addTableFills(new Column("add_time", FieldFill.INSERT))
                        .addTableFills(new Column("add_member", FieldFill.INSERT))
                        .addTableFills(new Column("edit_time", FieldFill.INSERT_UPDATE))
                        .addTableFills(new Column("edit_member", FieldFill.INSERT_UPDATE))
                        .enableFileOverride()
                        .mapperBuilder()
                        .formatMapperFileName("%sMapper")
                        .formatXmlFileName("%sMapper")
                        .controllerBuilder()
                        .enableRestStyle()
                        .enableHyphenStyle()
                        .build()
                )
                .templateConfig(builder -> builder
                        .disable(TemplateType.CONTROLLER, TemplateType.SERVICE, TemplateType.SERVICE_IMPL)
                        .build()
                )
                // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .templateEngine(new FreemarkerTemplateEngine())
                .execute();
    }


Comment From: xiamo6666

同样遇到这个问题

Comment From: xiamo6666

数据库类型----->Java类型 float--->Double double---->Object

Comment From: Rebuilding127

数据库类型----->Java类型 float--->Double double---->Object

这有点离谱的吧,查到的各自关系对应都是 double->double

Comment From: skyZcity

MyBatis-Plus 使用generator生成entity时,double类型生成结果为object 我改了个这个可以了

Comment From: lanjerry

下个版本修复.

https://github.com/baomidou/mybatis-plus/pull/5466/commits/7fb00413d2f10d99ef2fe4784fe956494adf3f7e

Comment From: zq99299

今天遇到了,幸好看到了,不然还不知道为什么