1.修复多数据源兼容错误

master
董哲奇 1 year ago
parent f647391f51
commit cfd8d8c9da

@ -7,6 +7,9 @@ import org.hibernate.boot.model.naming.PhysicalNamingStrategy;
import org.hibernate.engine.jdbc.env.spi.JdbcEnvironment; import org.hibernate.engine.jdbc.env.spi.JdbcEnvironment;
public class MyPhysicalNamingStrategy implements PhysicalNamingStrategy { public class MyPhysicalNamingStrategy implements PhysicalNamingStrategy {
private static final String[] chars = new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
@Override @Override
public Identifier toPhysicalCatalogName(Identifier name, JdbcEnvironment jdbcEnvironment) { public Identifier toPhysicalCatalogName(Identifier name, JdbcEnvironment jdbcEnvironment) {
return name; return name;
@ -19,7 +22,7 @@ public class MyPhysicalNamingStrategy implements PhysicalNamingStrategy {
@Override @Override
public Identifier toPhysicalTableName(Identifier name, JdbcEnvironment jdbcEnvironment) { public Identifier toPhysicalTableName(Identifier name, JdbcEnvironment jdbcEnvironment) {
return Identifier.toIdentifier(StringUtils.camelToUnderline(name.getText())); return Identifier.toIdentifier(StrUtil.toUnderlineCase(name.getText()));
} }
@Override @Override
@ -29,11 +32,6 @@ public class MyPhysicalNamingStrategy implements PhysicalNamingStrategy {
@Override @Override
public Identifier toPhysicalColumnName(Identifier name, JdbcEnvironment jdbcEnvironment) { public Identifier toPhysicalColumnName(Identifier name, JdbcEnvironment jdbcEnvironment) {
//用数组列出所有大写字母 return Identifier.toIdentifier(StrUtil.toUnderlineCase(name.getText()));
String[] chars = new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
if (StrUtil.startWithAny(name.getText(), chars)) {
return name;
}
return Identifier.toIdentifier(StringUtils.camelToUnderline(name.getText()));
} }
} }

Loading…
Cancel
Save