Spring boot整合Mybatis

网友投稿 358 2023-06-16

Spring boot整合Mybatis

Spring boot整合Mybatis

Mybatis初期使用比较麻烦,需要很多配置文件、实体类、dao层映射、还有很多其他的配置。初期开发使用generator可以根据表结构自动生产实体类、dao层代码,这样是可以减轻一部分开发量;后期mybatis进行大量的优化,现在可以使用注解版本,自动管理dao层和配置文件。

maven 依赖 注意:本文使用的是mysql,数据库依赖就不展示了

com.baomidou

mybatis-plus-boot-starter

2.3

org.apache.velocity

velocity-engine-core

2.0

代码模版引擎需要velocity或freemarker(mybatis-plus默认使用velocity,两者任选其一),这里使用velocity

代码生成器

public static void main(String[] args) {

CodeGeneration codeGeneration = new CodeGeneration();

codeGeneration.execute();

}

/**

*

* @ClassName: CodeGeneration

* @Description: 代码生成器

*/

public void execute() {

AutoGenerator mpg = new AutoGenerator();

// 全局配置

GlobalConfig gc = new GlobalConfig();

//生成的代码路径(系统路径)

gc.setOutputDir("/Users/wangxiaowei/wxw/eclipseWorkSpace/study/src/main/java");

gc.setFileOverride(true);

gc.setActiveRecord(false);// 不需要ActiveRecord特性的请改为false

gc.setEnableCache(false);// XML 二级缓存

gc.setBaseResultMap(true);// XML ResultMap

gc.setBaseColumnList(false);// XML columList

// 自定义文件命名,注意 %s 会自动填充表实体属性!

gc.setControllerName("%sController");

gc.setServiceName("%sService");

gc.setServiceImplName("%sServiceImpl");

gc.setMapperName("%sDao");

gc.setXmlName("%sMapper");

mpg.setGlobalConfig(gc);

// 数据源配置

DataSourceConfig dsc = new DataSourceConfig();

dsc.setDbType(DbType.MYSQL);

dsc.setDriverName("com.mxqDnADcJysql.jdbc.Driver");

dsc.setUsername("xxx");//数据库用户名

dsc.setPassword("xxx");//密码

//数据库路径

dsc.setUrl(

"jdbc:mysql://localhost:30870/horus_dev?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true");

mpg.setDataSource(dsc);

// 策略配置

StrategyConfig strategy = new StrategyConfig();

strategy.setTablePrefix(new String[] { "" });// 此处可以修改为您的表前缀

strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略

// 需要生成的表的名称,这里app_user_info即为表名

strategy.setInclude(new String[] {

"app_user_info",

});

strategy.setSuperServiceClass(null);

strategy.setSuperServiceImplClass(null);

strategy.setSuperMapperClass(null);

mpg.setStrategy(strategy);

// 包配置

PackageConfig pc = new PackageConfig();

pc.setParent("com.wang.study");//父包,下面的子包均在这父包之下

pc.setController("controller");//上面生成的controller类 放到controller子包

pc.setService("service");//上面生成的service 放到service子包,下面类似

pc.setMapper("dao");

pc.setEntity("pojo");

pc.setXml("mapper");

mpg.setPackageInfo(pc);

// 执行生成

mpg.execute();

}

mybatis 基础配置(这里使用的properties)

#数据源

spring.datasource.url=jdbc:mysql://localhost:30870/horus_dev?useUnicode=true&characterEncoding=utf-8

spring.datasource.username =xxx

spring.datasource.password =xxx

spring.datasource.type =com.alibaba.druid.pool.DruidDataSource

#mapper文件

mybatis-plus.mapper-locations=classpath:com/wang/study/mapper/*.xml

#数据库表对应的实体类所在包

mybatis-plus.type-aliases-package=com/wang/study/pojo

#日志 打印sql

logging.level.com.wang.study.dao=debug

mybatis-plus 分页,在配置类里添加以下配置

/**

* mybatis-plus分页插件

* 文档:http://mp.baomidou.com

*/

@Bean

public PaginationInterceptor paginationInterceptor() {

PaginationInterceptor paginationInterceptor = new PaginationInterceptor();

paginationInterceptor.setDialectType("mysql");

return paginationInterceptor;

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Springboot跨域问题三种解决方案
下一篇:IDEA集成git和使用步骤的实现方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~