Olá a todos, gostaria de opinião de vocês para ajudar a resolver um problema que enfrento hoje, o cenário e o seguinte:
Trabalho em uma empresa que possue um ERP feito em Delphi, e utilizado o SGBD Firebird, o sistema é enorme chegando a ter quase 200 tabelas no banco de dados, a maioria das funcionalidades e feita através de procedures armazenadas no banco, como gravação de titulos, e ate mesmo cadastros como de cliente.Pois bem, a empresa quer passar uma parte do sistema pra WEB, utilizando Java, no inicio decidi usar Hibernate pois o prazo e curto e o Hibernate me da um ganho de produção enorme, mas no decorrer do projeto, tive que pegar um Generator do firebird, tentei fazer desta maneira:
Query query=em.createNativeQuery("Select gen_id(nome_do_generator,1) from rdb$database");
count=query.getSingleResult();
Mas o drive do Firebird me lança um erro de CHARACTER_LENGTH, então tive que usar JDBC na mão criando uma outra camada de Persistencia, trabalhando agora com Connection e PreparedStatement, com JDBC consegui fazer funcionar perfeito, mas tenho o problema de usar duas “camadas” e não gostei desta abordagem.
Gostaria da opinião de você, alguem que ja tenha experiencia com Bancos de Dados legado pra saber se vale a pena usar o Hibernate neste caso ou e melhor usar JDBC puro e perder um pouco mais de tempo fazendo os mapeamentos na mão.
Obrigado
