Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Utilizando JDBC em projeto web

Boa noite!

Notei que não foi necessário usar o método Class.forName("< FQN_DO_DRIVER >"); para carregar o driver no nosso projeto.

Porém, quando vou utilizar o jdbc em projeto web (sem nenhum framework, apenas servlets), o método acima mencionado é necessário. Caso eu não utilize recebo o seguinte erro:

java.sql.SQLException: No suitable driver
    java.sql/java.sql.DriverManager.getDriver(DriverManager.java:298)
    com.mchange.v2.c3p0.DriverManagerDataSource.driver(DriverManagerDataSource.java:285)
    com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:175)
    com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:220)
    com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:206)
    com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:203)
    com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1176)
    com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1163)
    com.mchange.v2.resourcepool.BasicResourcePool.access$700(BasicResourcePool.java:44)
    com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1908)
    com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696)

Por que isso acontece? É realmente necessário utilizar Class.forName("< FQN_DO_DRIVER >"); em projetos web ou isso é depreciado/má prática?

Obrigado pela ajuda desde já!

2 respostas
solução!

acredito que depende da versão do driver, mas não é má prática não, antigamente se fazia dessa forma, se está tentando usar jdbc porque não gosta do jpa, dá uma olhada no Mybatis

Valeu, Ricardo!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software