覚えていない
覚えていない
覚えていない
Joined 2 years ago
MayJuneJulyAugSeptOctNovDecJanFebMarApr
覚えていない
·

Mybatis Generator 简介

Mybatis Generator(简称MBG)是一个为Mybatis框架用户提供的代码生成工具,主要用于生成与数据库表相关的Java类和SQL映射文件。通过配置文件,指定数据库连接信息、表名、用户名和密码等信息,自动生成Service层、Controller层、model层、mapper层的代码。这样可以大大减少手动编写这些代码的时间和工作量。

优点

  1. 提高开发效率:自动生成相关代码,减少手动编写的时间和错误。
  2. 标准化代码结构:生成的代码风格和结构统一,方便项目管理和维护。
  3. 可配置性高:可以灵活配置生成的代码,满足不同项目的需求。
  4. 支持多种数据库:支持多种数据库类型,如MySQL、Oracle、SQL Server等。

缺点

  1. 生成的代码可能不符合特定项目的需求:每个项目的需求都有所不同,生成的代码可能需要进一步修改才能满足项目需求。
  2. 灵活性有限:虽然MBG具有较高的可配置性,但与手动编写代码相比,它的灵活性有限。
  3. 学习成本:需要了解MBG的使用方法和配置方式。

适用场景

  1. 适用于初期项目开发:在项目初期,可以使用MBG快速生成基本的CRUD(增删改查)操作代码,加快项目开发进度。
  2. 项目重构和迁移:在项目重构或迁移时,可以使用MBG生成新的代码结构,减少手动修改代码的工作量。
  3. 数据库表结构变更:当数据库表结构发生变更时,可以使用MBG重新生成相关代码,确保代码与数据库表结构保持一致。

总之,Mybatis Generator作为一个代码生成工具,可以大大提高开发效率,减少人为错误。然而,它并不能适应所有场景,开发者需要根据项目需求和团队习惯来判断是否使用该工具。

覚えていない
·

数据库管理员把他们生命中的相当一部分时间花在了调整、试验以改善 DBMS 的性能之上。在诊断应用的滞缓现象和性能问题时,性能不良的数据库(以及数据库查询)通常是最常见的祸因

可以看出,下面的内容并不能完全决定 MySQL 的性能,我们只是想回顾一下前面各章的重点,提供进行性能优化探讨和分析的一个出发点

  • 首先,MySQL(与所有 DBMS 一样)具有特定的硬件建议。在学习和研究 MySQL 时,使用任何旧的计算机作为服务器都可以。但对用于生产的服务器来说,应该坚持遵循这些硬件建议
  • 一般来说,关键的生产 DBMS 应该运行在自己的专用服务器上
  • MySQL 是用一系列的默认设置预先配置的,这些设置开始通常是很好的。但过一段时间后你可能需要调整内存分配、缓冲区大小等(为查看当前设置,可使用 SHOW VARIABLES; 和 SHOW STATUS;)
  • MySQL 是一个多用户多线程的 DBMS,换言之,它经常同时执行多个任务。如果这些任务中的某一个执行缓慢,则所有请求都会执行缓慢。如果你遇到显著的性能不良,可使用 SHOW PROCESSLIST 显示所有活动进程(以及它们的线程 ID 和执行时间)你还可以用 KILL 命令终结某个特定的进程(使用这个命令需要作为管理员登录)
  • 总是有不止一种方法编写同一条 SELECT 语句。应该试验联结、并、子查询等,找出最佳的方法
  • 使用 EXPLAIN 语句让 MySQL 解释它将如何执行一条 SELECT 语句
  • 一般来说,存储过程执行得比一条一条地执行其中的各条 MySQL 语句快
  • 应该总是使用正确的数据类型
  • 绝不要检索比需求还要多的数据。换言之,不要用 SELECT *(除非你真正需要每个列)
  • 有的操作(包括 INSERT)支持一个可选的 DELAYED 关键字,如果使用它,将把控制立即返回给调用程序,并且一旦有可能就实际执行该操作
  • 在导入数据时,应该关闭自动提交。你可能还想删除索引(包括 FULLTEXT 索引),然后在导入完成后再重建它们
  • 必须索引数据库表以改善数据检索的性能。确定索引什么不是一件微不足道的任务,需要分析使用 SELECT 语句以找出重复的 WHERE 和 ORDER BY 子句。如果一个简单的 WHERE 子句返回结果所花的时间太长,则可以断定其中使用的列(或几个列)就是需要索引的对象
  • 你的 SELECT 语句中有一系列复杂的 OR 条件吗?通过使用多条 SELECT 语句和连接它们的 UNION 语句,你能看到极大的性能改进
  • 索引改善数据检索的性能,但损害数据插入、删除和更新的性能。如果你有一些表,它们收集数据且不经常被搜索,则在有必要之前不要索引它们(索引可根据需要添加和删除)
  • LIKE 很慢。一般来说,最好是使用 FULLTEXT 而不是 LIKE
  • 数据库是不断变化的实体。一组优化良好的表一会儿后可能就面目全非了。由于表的使用和内容的更改,理想的优化和配置也会改变
  • 最重要的规则就是,每条规则在某些条件下都会被打破