我正在使用 Spring 框架来开发 Web 应用程序,并使用 Hibernate 来支持持久层。我已经知道我可以使用以下代码自定义自己的方言:
public class MySQL5Dialect extends MySQL5InnoDBDialect {
@Override
public String getTableTypeString() {
return " ENGINE=InnoDB DEFAULT CHARSET=utf8";
}
}
但这适用于所有表。现在我有不同的表和不同的 MySQL 存储引擎。例如,一个表使用 InnoDB
,另一个表使用 MyISAM
。我该如何实现这个目标?提前致谢。
最佳答案
我觉得有必要通过后退一步并质疑前提来回答一些问题。
前提是你要使用不同的引擎?响应是——仅使用 InnoDB。
你的计数器是——但是MyISAM不是更快吗?
答案是——这是一个老太太的故事。 您的应用程序(无论它是什么)在所有 InnoDB 上的运行速度很可能比在任何 MyISAM 上运行更快。
关于java - Java Spring 中不同的 MySQL 引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43759257/