@青苗 你好,想跟你请教个问题:您好,我在工程中使用了Mybatis-plus的2.1.1版本,在编写代码生产类后使用会报错查询%s问题,请问这个是版本bug吗,因为我在进行dubug的时候发现查询的时候sql里面并没有替换为表名。希望您在空闲的时候能解惑,感谢!
maven配置为
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>2.1.1</version> </dependency>
源码为
public static void main(String[] args) throws SQLException { String[] tableNames = { "model_resource_apply_record"}; doGenerator(tableNames, "com.resource.console.message"); } private static void doGenerator(String[] tableName, String packageName) { //1. 全局配置 GlobalConfig config = new GlobalConfig(); config.setActiveRecord(true) // 是否支持AR模式 .setAuthor("author") // 作者 .setOutputDir("D:\dsp-brain-console\src\main\java") // 生成路径 .setFileOverride(false) // 文件覆盖 .setServiceName("%sService") // 设置生成的service接口的名字 .setMapperName("%sDao") .setEnableCache(false)// XML 二级缓存 .setBaseResultMap(true)//生成基本的resultMap .setBaseColumnList(true);//生成基本的SQL片段 //2. 数据源配置 DataSourceConfig dsConfig = new DataSourceConfig(); dsConfig.setDbType(DbType.MYSQL) // 设置数据库类型 .setDriverName("com.mysql.jdbc.Driver") .setUrl("xxx") .setUsername("xxx") .setPassword("xxx"); //3. 策略配置globalConfiguration中 StrategyConfig stConfig = new StrategyConfig(); stConfig.setCapitalMode(true) //全局大写命名 .setNaming(NamingStrategy.underline_to_camel) .setEntityLombokModel(true) .setInclude(tableName) .setRestControllerStyle(true); //4. 包名策略配置 PackageConfig pkConfig = new PackageConfig(); pkConfig.setParent(packageName) .setMapper("dao")//dao .setService("service")//servcie .setController("controller")//controller .setEntity("entity") .setXml("mapper");//mapper.xml //5. 模板配置,不配置的话就走默认的模板 TemplateConfig tpConfig = new TemplateConfig(); // tpConfig.setEntity("/conf/mp_templates/entity.java.vm"); tpConfig.setController(null); // tpConfig.setService("/conf/mp_templates/service.java.vm"); // tpConfig.setServiceImpl("/conf/mp_templates/serviceImpl.java.vm"); // tpConfig.setMapper("/conf/mp_templates/mapper.java.vm"); // tpConfig.setXml("/conf/mp_templates/mapper.xml.vm"); //6. 整合配置 AutoGenerator ag = new AutoGenerator(); ag.setGlobalConfig(config) .setDataSource(dsConfig) .setStrategy(stConfig) .setPackageInfo(pkConfig) .setTemplate(tpConfig); //7. 执行 ag.execute(); }
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
<p>这里错误是执行 sql 需要 format 但是没有执行,你确定下 querySQL 是不是 mysql 的实现</p>
2X 最新版本是 2.3.1 如果还是自己无法解决你试试最新版本
如果是新项目建议用 3X
感谢您的回答!我切换为2.2.0之后可以正常使用了。