SpringBoot集成Myabtis

二、SpringBoot集成Myabtis

2.1. pom 依赖

 <!--版本控制-><properties><java.version>1.8</java.version><oracle.version>11.2.0.3</oracle.version><mysql.version>8.0.20</mysql.version></properties><!--Mybatis--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.2</version></dependency><!--Mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!--oracle--><dependency><groupId>com.oracle</groupId><artifactId>ojdbc6</artifactId><version>${oracle.version}</version></dependency>

注:数据库任选其一即可

2.2. yml配置

mybatis:configuration:map-underscore-to-camel-case: true# 控制台日志配置log-impl: org.apache.ibatis.logging.stdout.StdOutImplmapper-locations: classpath:mappers/*.xml

2.3. 启动类+扫描mapper包注解

package com.gblfy;import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
@MapperScan(basePackages = "com.gblfy.mapper")
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}
}

三、集成Mybatis Generator

适配Mysql和Oracle

3.1. 插件集成

官网链接:https://mybatis.org/generator/running/runningWithMaven.html

<build><plugins><!--逆向工程--><plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.2</version><configuration><verbose>true</verbose><!--代码生成重新覆盖--><overwrite>true</overwrite></configuration><dependencies><!--oracle--><dependency><groupId>com.oracle</groupId><artifactId>ojdbc6</artifactId><version>${oracle.version}</version></dependency><!--Mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency></dependencies></plugin></plugins></build>

3.2. 新建generatorConfig.xml文件

在resources目录下面
内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"><generatorConfiguration><context id="testTables" targetRuntime="MyBatis3"><commentGenerator><!-- 是否去除自动生成的注释 true:是 : false:--><property name="suppressAllComments" value="true" /></commentGenerator><!--数据库连接的信息:驱动类、连接地址、用户名、密码 --><!-- <jdbcConnection driverClass="com.mysql.jdbc.Driver"connectionURL="jdbc:mysql://localhost:3306/knowledge_base?autoReconnect=true&amp;useUnicode=true&amp;characterEncoding=utf8&amp;zeroDateTimeBehavior=CONVERT_TO_NULL&amp;useSSL=false&amp;serverTimezone=CTT&amp;nullCatalogMeansCurrent=true" userId="root"password="root"></jdbcConnection>--><!-- 数据库连接配置 --><jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"connectionURL="jdbc:oracle:thin:@192.168.0.12:1521:orcl"userId="scoptt"password="scoptt"></jdbcConnection><!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和NUMERIC 类型解析为java.math.BigDecimal --><javaTypeResolver><property name="forceBigDecimals" value="false" /></javaTypeResolver><!-- targetProject:生成PO类的位置 --><javaModelGenerator targetPackage="com.gblfy.mall.pojo"targetProject="src/main/java"><!-- enableSubPackages:是否让schema作为包的后缀 --><property name="enableSubPackages" value="false" /><!-- 从数据库返回的值被清理前后的空格 --><property name="trimStrings" value="true" /></javaModelGenerator><!-- targetProject:mapper映射文件生成的位置 --><sqlMapGenerator targetPackage="com.gblfy.mall.mapper"targetProject="src/main/java"><!-- enableSubPackages:是否让schema作为包的后缀 --><property name="enableSubPackages" value="false" /></sqlMapGenerator><!-- targetPackage:mapper接口生成的位置 --><javaClientGenerator type="XMLMAPPER"targetPackage="com.gblfy.mall.dao"targetProject="src/main/java"><!-- enableSubPackages:是否让schema作为包的后缀 --><property name="enableSubPackages" value="false" /></javaClientGenerator><!-- 指定数据库表 --><!--<table schema="" tableName="MQ_PRODUCER_LOG_TRACK"></table>--><table schema="" tableName="sys_user"></table><!-- 有些表的字段需要指定java类型<table schema="" tableName=""><columnOverride column="" javaType="" /></table> --></context>
</generatorConfiguration>

注:Mybatis Generator 配置详解

3.3.运行插件生成代码

在这里插入图片描述
或者载命令行执行以下命令:

mvn mybatis-generator:generate

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517618.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DevOps 在移动应用程序开发中扮演什么角色?

作者 | VARUN BHAGAT译者 | 火火酱&#xff0c;责编| Carol封图 | CSDN 付费下载自视觉中国全球智能手机用户数量已经超过30亿。据估计&#xff0c;未来几年用户人数将增加至数亿人。智能手机用户和应用程序下载量的这种稳定增长证明了移动应用程序行业的蓬勃发展。如今在这个技…

她说:行!嫁人就选程序员!

本文的重点是&#xff1a;“为什么年轻漂亮的小姑娘都瞄准了程序员小哥哥”“理发38&#xff1f;太奢侈了&#xff01;淘宝20买套剪刀自己可以用好几年。”“衣服太贵了&#xff0c;我觉得优衣库的那件打折就已经很好了”“上个月的一千块钱的零花钱没花完&#xff0c;这个月先…

数学之美:嵌入式编程凹凸性之妙用(附C代码)

来源 | 嵌入式客栈今天遇到一个网友问一个问题&#xff0c;他有一个传感器测量一个物理量&#xff0c;需要判断其变化趋势&#xff0c;我给了一些建议&#xff0c;这里将这个建议展开做些深入分析&#xff0c;并分享给大家。本文想借此表达一下个人的一个观点&#xff0c;做开发…

从地摊看云计算:规模产业历程大揭秘

作者 | 马超责编 | 夕颜头图 | CSDN下载自视觉中国出品 | CSDN&#xff08;ID:CSDNnews&#xff09; 地摊经济的突然兴起&#xff0c;可能是2020年发生在中国最神奇的一幕了&#xff1a;刚刚还在直播间内直播的带货的企业老板&#xff0c;转眼间又来到地摊来叫卖产品了。当然也…

SpringCloud Gateway 快速入门_01

文章目录一、网关模块搭建1. 引入依赖2. 配置3. 启动类二、产品服务模块搭建2.1. 引入依赖2.2. 配置2.3. 控制层2.4. 启动类2.5. 启动产品模块三、启动中间件3.1. nacos启动3.2. 启动gateway3.3. 配置域名映射四、测试验证4.1. 测试产品服务4.2. 网关访问产品一、网关模块搭建 …

这件事,阿里爱了10年

阿里云双11亿元补贴提前领&#xff0c;进入抽取iPhone 11 Pro&#xff1a;https://www.aliyun.com/1111/2019/home?utm_contentg_1000083110 原文链接 本文为云栖社区原创内容&#xff0c;未经允许不得转载。

程序员!别逼自己买课了,每天花10分钟做这件事,写代码能力暴增......

作为一个教Python10年&#xff0c;带了5万名学生入职一线互联网公司的老师&#xff0c;经常遇到一些学员和我抱怨&#xff1a;看了很多教程&#xff0c;遇到问题不知道怎么寻找解决方案...课上听老师讲案例一听就会&#xff0c;可是一去做相关的练习题就傻了&#xff0c;无从下…

SpringCloud 基于OAth2.0 搭建认证授权中心_02

文章目录一、数据库部分1. 创建数据库2. 初始化数据脚本二、搭建maven父工程认证授权模块2.1. 创建一个maven项目2.2. 引入依赖三、搭建认证授权模块3.1. 创建一个子maven项目3.2. 引入依赖3.3. 增加application.yaml3.4. 增加数据库实体3.5. 增加接口3.6. 增加用户读取实现类3…

Knative Service 是如何指定端口和协议的

如果使用 Knative Serving 部署一个 Nginx 你可能会发现服务起来了&#xff0c;但是无法访问到 Nginx 中的服务。当然这不是 Nginx 的问题&#xff0c;这是因为 Knative 对 Container 的端口有要求。默认 Nginx 的服务端口是 80 &#xff0c;而 Knative Serving queue 8012 默认…

那天我去逛街,发现连大编程语言都摆起地摊了……

作者 | 轩辕之风来源 | 编程技术宇宙&#xff08;ID&#xff1a;xuanyuancoding&#xff09;困难年年有&#xff0c;今年特别多。公司要做一个新的网站&#xff0c;可预算有限&#xff0c;听说为了生计&#xff0c;各大编程语言们都摆起了地摊儿&#xff0c;我决定去瞧瞧&#…

十年磨一剑:从2009启动“去IOE”工程到2019年OceanBase拿下TPC-C世界第一

十年前&#xff08;2009年&#xff09;的9月&#xff0c;我奉命组建当时的淘宝技术保障部&#xff1b;随即启动了2010年的技术预算工作&#xff0c;记得第一次给时任集团首席架构师的王坚博士汇报预算的时候&#xff0c;我得意地说到&#xff1a;“&#xff08;淘宝&#xff09…

SpringCloud Gateway 集成 oauth2 实现统一认证授权_03

文章目录一、网关搭建1. 引入依赖2. 配置文件3. 增加权限管理器4. 自定义认证接口管理类5. 增加网关层的安全配置6. 搭建授权认证中心二、搭建产品服务2.1. 创建boot项目2.2. 引入依赖2.3. controller2.4. 启动类2.5. 配置四、测试验证4.1. 启动nacos4.2. 启动认证中心4.3. 启动…

Knative 健康检查机制分析

从头开发一个 Serverless 引擎并不是一件容易的事情&#xff0c;今天咱们就从 Knative 的健康检查说起。通过健康检查这一个点来看看 Serverless 模式和传统的模式都有哪些不同以及 Knative 针对 Serverless 场景都做了什么思考。 Knative Serving 模块的核心原理如下图所示。下…

【模式识别】探秘分类奥秘:K-近邻算法解密与实战

​&#x1f308;个人主页&#xff1a;Sarapines Programmer&#x1f525; 系列专栏&#xff1a;《模式之谜 | 数据奇迹解码》⏰诗赋清音&#xff1a;云生高巅梦远游&#xff0c; 星光点缀碧海愁。 山川深邃情难晤&#xff0c; 剑气凌云志自修。 目录 &#x1f30c;1 初识模式识…

SpringCloudGateway 集成 nacos 整合实现动态路由_04

接上一篇&#xff1a;SpringCloud Gateway 集成 oauth2 实现统一认证授权 文章目录一、目前存在的问题1. 问题简述2. 集成nacos前配置3. 前言简述二、网关模块改造集成nacos2.1. 引入依赖2.2. 创建bootstrap.yaml2.3. 在nacos配置中心添加配置2.4. 启动服务2.5. 访问产品模块2.…

深度 | 带领国产数据库走向世界,POLARDB底层逻辑是什么?

阿里妹导读&#xff1a;在刚刚结束的乌镇世界互联网大会上&#xff0c;阿里云自主研发的POLARDB云原生数据库当选世界互联网领先科技成果&#xff0c;凭实力站上C位。这个”包管“了北京市每天800万人次的公交出行的下一代分布式数据库到底有多强大&#xff1f;我们请阿里云智能…

QCon演讲|闲鱼从零到千万DAU的应用架构演进

导读:业务架构要随着业务发展做相应的演进,继而支撑业务的快速发展。本文主要通过介绍闲鱼从零发展到千万级DAU应用的不同阶段的业务特点、核心问题以及针对性的架构演进,来阐述业务架构的演进思路与心得。 闲鱼业务背景 技术架构的演进跟业务形态都是强相关的,闲鱼的市场本质…

程序员必修课:为什么非要用Python做数据分析?Excel不好吗?

日本最大的证券公司之一野村证券首席数字官马修汉普森&#xff0c;在Quant Conference上发表讲话&#xff1a;“用Excel的人越来越少&#xff0c;大家都在码Python代码。”甚至直接说&#xff1a;“Python已经取代了Excel。”实际上&#xff0c;Python的应用领域极为广泛&#…

SpringCloudGateway实现金丝雀发布_05

接上一篇&#xff1a;SpringCloudGateway 集成 nacos 整合实现动态路由 文章目录一、启动服务1. 启动Gateway-Serv模块服务2. 启动auth-serv认证授权服务3. 启动product-serv服务4. 启动product-serv服务2二、修改nacos配置2.1. 配置改造2.2. 配置发布三、测试验证3.1. 访问产品…

Dubbo 在 K8s 下的思考

序言 Dubbo在2011开源之后&#xff0c;一直是国内最受欢迎的RPC框架&#xff0c;之后spring boot和Spring Cloud的面世&#xff0c;助推了微服务的火热程度。计算机的世界变化很快&#xff0c;自从容器和K8s登上舞台之后&#xff0c;给原有的RPC领域带来了很大的挑战。这个文章…