尽量使用代码生成器来生成mapper代码,能不手写绝不手写.

代码生成器配置

org.mybatis.generator

mybatis-generator-core

1.3.5

生成之后拷贝到项目中,然后删除生成路径上的代码,否则下次生成会直接在mapper.xml后面追加,导致文件错误,项目运行不了

使用creatira的like时,要自己传入两个百分号

example.createCriteria().andNameLike("%"+findContent+"%");

配置的gui工具

分页

如果用了代码生成器,则继承生成器里的PluginAdapter,让自动生成分页代码:MyBatis Generator实现MySQL分页插件

将自己写的类配置到generatorConfig.xml的context标签下的plugin中即可.

插入时自动给id赋值:

默认情况下是没有赋值的.

注意,identity默认为false,此时生成的sql的order为BEFORE.而我们需要的是插入后查询id并给bean赋值,所以需要的是AFTER,所以identity为true.

//generatorConfig.xml里的配置:

//生成的mapper.xml:

SELECT LAST_INSERT_ID()

insert into expert (Id, name, shortname,

...

分页时,获取某一查询条件下的总数

默认就有,countbyexample

让生成的sql的字段用反引号括起来,以避免与mysql保留字段冲突:

先在context标签下加上反引号的定义:

然后在table标签的属性里开启delimitAllColumns:

text类型 -避免生成blob类型

在table标签内:

批量插入

其他插件库:

官方插件

代码:

generator mysql插件_mybatis Generator最佳实践(数据库:mysql)相关推荐

  1. 最佳实践 | 数据库迁云解决方案选型 流程全解析

    Oracle是非常强大的综合数据库,但同时也存在一些劣势,比如由于采用集中式架构,无法很好地实现横向扩展,并且其稳定性依赖于硬件.出于架构升级.降低成本和云化等需求,越来越多的企业需要"去O ...

  2. ySQL性能优化的21个最佳实践 和 mysql使用索引

    MySQL性能优化的21个最佳实践 和 mysql使用索引 今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 ...

  3. 最佳实践:MySQL CDC 同步数据到 ES

    作者:于乐,腾讯 CSIG 工程师 一. 方案描述 1.1 概述 在线教育是一种利用大数据.人工智能等新型互联网技术与传统教育行业相结合的新型教育方式.发展在线教育可以更好的构建网络化.数字化.个性化 ...

  4. mysql异地灾备架构_最佳实践 数据库异地灾备

    方案概述 根据企业所在行业.合规要求.数据规模.RPO/RTO要求的不同,数据库灾备目的和要求各不相同,投入成本也是不同的.阿里云数据库灾备解决方案提供实时数据备份能力,满足企业备份多样化选择.通过数 ...

  5. 金仓数据库 MySQL 至 KingbaseES 迁移最佳实践(3. MySQL 数据库移植实战)

    3. MySQL 数据库移植实战 由于 KingbaseES 利用 KDTS-PLUS 等多种工具简化移植过程. 本节重点描述了在实际应用中移植一个 MySQL 数据库系统的完整过程,以及其中的主要移 ...

  6. Jenkins Pipeline插件十大最佳实践!

    Jenkins Pipeline 插件对于 Jenkins 用户来说可以让用户能够改变游戏规则.基于 Groovy 中的领域特定语言(DSL),Pipeline 插件使 Pipelines 可以有脚本 ...

  7. mysql 迁移 nosql_小米从关系型数据库Mysql到Nosql HBase的迁移实践操作

    2013年11月22-23日,作为国内唯一专注于Hadoop技术与应用分享的大规模行业盛会,2013 Hadoop中国技术峰会(China Hadoop Summit 2013)于北京福朋喜来登集团酒 ...

  8. mysql存储的判断if_if在数据库mysql存储中判断

    我们经常会对一个事物作出选择,就如屏幕前的小伙伴们选择继续浏览本篇文章,或者关闭这个界面,这就是我们所说的判断.当然看文章的判断条件是,文章的内容是否符合小伙伴们的兴趣.今天我们就数据库mysql存储 ...

  9. mysql基础小测试三_数据库---MySQL(三)

    一.视图 视图是一个虚拟表,是sql的查询结果,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据,在使用视图时动态生成.视图的数据变化会影响到基表,基表的数据变化也会影响到视图[i ...

最新文章

  1. php 伪静态 page-18.html,PHP 伪静态实现技术原理讲解
  2. 无限路由 DI-624+A 详细介绍
  3. 济宁市机器人科技乐园_【喜讯】山东省青少年科技创新大赛、机器人竞赛,济宁市信息学奥赛获奖名单新鲜出炉...
  4. 每天一道笔试题-2012年2月16日
  5. MATLAB入门(二)
  6. bootstrap源码之滚动监听组件scrollspy.js详解
  7. 简单计算器 (关于栈的一种应用)
  8. vuex语法精简(方便开发查阅)
  9. sql server 2000的数据库还原
  10. [转] Gmail 的Host解决方案
  11. OpenGL基础24:聚光灯
  12. JS处理文本框只能输入中文、英文、数字,防止SQL特殊字符注入(解决MAC中文输入法下会取得拼音的值的问题)
  13. 域名实名认证多长时间_域名的实名认证需要多少时间
  14. java版我的世界MITE怎么下_MITE纯新手向教程 - [MITE]MC实在是太简单了 (Minecraft Is Too Easy) - MC百科|最大的Minecraft中文MOD百科...
  15. c语言用二维数组遍历 “tic tac toe“ 输出游戏结果
  16. Android进阶之路 - 毛玻璃遮罩层
  17. 人工智能辅助药物发现(5)药物属性预测
  18. web调用摄像头拍照并上传到服务器
  19. 去除html双击后选中有蓝色背景
  20. 软件测试 | 常见代理工具

热门文章

  1. java 根据经纬度计算多边形的面积_强基初中数学amp;学Python——第二十九课 根据海伦秦九韶公式编程计算三角形面积...
  2. Visual Studio 竖向选择功能
  3. C++11多线程thread参数传递问题
  4. Effective Dart 文档注释在Flutter项目中的实践
  5. 学界 | 马里兰大学研究:人脑神经网络的动态变化和声音感知
  6. QT QML 在qml中自定义信号
  7. 如何用cocos2d-x来开发简单的Uphone游戏:(二) 移动的精灵
  8. 利用dbms_backup_restore函数来恢复数据文件
  9. [翻译]NUnit---String Collection File Directory Assert (七)
  10. jquery.timers使用说明