O driver JDBC está funcionando perfeitamente.
Como você já aprendeu nos comentários o problema é que
a) O Spring Data JDBC agora requer um
Dialect
para cada banco de dados b) Spring Data JDBC não é fornecido com um
Dialect
para Oráculo. A correção:
Conforme descrito em Dialeto Spring Data JDBC Firebird não reconhecido e em https://spring .io/blog/2020/05/20/migrating-to-spring-data-jdbc-2-0 você precisa fornecer seu próprio
Dialect
implementação agora. Algo assim deve funcionar:
class MyOracleDialect extends AnsiDialect {
private static final LimitClause LIMIT_CLAUSE = new LimitClause() {
@Override
public String getLimit(long limit) {
return String.format("FETCH NEXT %d ROWS ONLY", limit);
}
@Override
public String getOffset(long offset) {
return String.format("OFFSET %d ROWS", offset);
}
@Override
public String getLimitOffset(long limit, long offset) {
return String.format("OFFSET %d ROWS FETCH NEXT %d ROWS ONLY", offset, limit);
}
@Override
public Position getClausePosition() {
return Position.AFTER_ORDER_BY;
}
};
@Override
public LimitClause limit() {
return LIMIT_CLAUSE;
}
}
Você então precisa fazer o
Dialect
disponível por meio de um DialectProvider
conforme descrito na pergunta referenciada do Stackoverflow:Alguns antecedentes:
Até agora, a equipe do Spring Data não executa seus testes de integração com um banco de dados Oracle. Isso ocorre porque há algum tempo não estava claro como fazer isso de maneira legal, já que todo o código, incluindo a infraestrutura de compilação, era de código aberto e a Oracle exigia a aceitação de todos os tipos de coisas para usar uma instância de banco de dados ou seu driver.
Até agora, as imagens do Docker estão disponíveis para teste e o driver JDBC está disponível no Maven Central. Ainda é um pouco complicado, pois as opções atuais para imagens docker que conheço permitem que você escolha entre um tamanho de imagem de muitos GBs ou um tempo de inicialização de cerca de 15 minutos.
De qualquer forma, há um membro da comunidade trabalhando no problema:https://jira.spring.io/ navegar/DATAJDBC-256
Estou, portanto, confiante de que poderemos oferecer suporte total à Oracle em um futuro próximo.