Mark StandardDialectResolver as final break backward compatibility, Developers can customize dialect resolver base on standard implementation, for official release doesn't resolved latest dialect, or customized dialect.
public class MyDialectResolver extends StandardDialectResolver {
private static final long serialVersionUID = -3451798629900051614L;
@Override
public Dialect resolveDialect(DialectResolutionInfo info) {
DatabaseProduct database = DatabaseProduct.parse(info.getDatabaseName());
int majorVersion = info.getDatabaseMajorVersion();
if (database == DatabaseProduct.MYSQL) {
if (majorVersion == 8)
return new MySQL8Dialect();
}
return super.resolveDialect(info);
}
}
|