Todo projeto demora um pouco para funcionar no banco de dados. No passado era fácil de manusear porque era todo baseado em TOMCAT5.0. Quer fosse equipado com ORCALE SQLSERVER2000 ou MYSQL, já estou acostumado com isso. Mas nunca esperei usar o TOMCAT5 novamente.5 Para fazer isso, estou acostumado a usar o TOMCAT5.5 apenas no método de configuração proxool.xml, mas sempre acreditei que o TOMCAT5.5 pode ser usado em todos os métodos. Porque a configuração é apenas um método.
Trabalhei nisso o dia todo ontem e finalmente relatei um erro como Cannot create JDBC driver of class '' for connect URL 'null' ao usar o banco de dados. o arquivo de configuração em algum lugar, mas depois de verificar por um longo tempo, não havia nem uma palavra escrita. Verifiquei online por engano e descobri que muitos irmãos encontraram o mesmo problema que eu tentei de acordo com o método de escrita de um irmão. mas falhou. Durante o período TOMCAT5.0, configuramos assim em XXX.XML no caminho do banco de dados TOMCAT_HOMEconfCatalinalocalhost.
<?xml versão='1.0' codificação='utf-8'?>
<Context docBase="D:eclipseworkspaceBKGMS" path="/BKGMS" reloadable="true" workDir="D:eclipseworkspaceBKGMSworkorgapachejsp">
<Resource auth="Container" name="RedstoneSql" type="javax.sql.DataSource"/>
<ResourceParams name="melhor">
<parâmetro>
<nome>fábrica</nome>
<valor>org.apache.commons.dbcp.BasicDataSourceFactory</valor>
</parametro>
<parâmetro>
<nome>URL</nome>
<value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=bkgms</value>
</parametro>
<parâmetro>
<nome>senha</nome>
<value>sa</value>
</parametro>
<parâmetro>
<nome>maxWait</nome>
<valor>10.000</valor>
</parametro>
<parâmetro>
<name>maxAtivo</name>
<valor>100</valor>
</parametro>
<parâmetro>
<name>driverClassName</name>
<valor>com.microsoft.jdbc.sqlserver.SQLServerDriver</valor>
</parametro>
<parâmetro>
<nome>nome de usuário</nome>
<value>sa</value>
</parametro>
<parâmetro>
<name>maxIdle</name>
<valor>30</valor>
</parametro>
</ResourceParams>
</Contexto>
De acordo com o método de escrita de um irmão, adicione <ResourceLink global="better" name="better" type="javax.sql" antes de <Resource auth="Container" name="better" type="javax.sql.DataSource"/ > .DataSource"/> pode ser feito, mas após reiniciar o TOMCAT, ele relata "incapaz de obter conexão: nenhum driver adequado"
Droga, acho que isso não está funcionando, vamos verificar novamente. A maioria dos irmãos disse que as configurações do TOMCAT5.5 e TOMCAT5.0 são diferentes. Desde o Tomcat5.5, o elemento <Resoucepram> do elemento <context> é diferente. cancelado e o elemento de parâmetro original Todos aparecem como atributos de Recurso.
Em vez disso, deve ser escrito assim, acrescentando <ResourceLink> a propósito.
<?xml versão='1.0' codificação='utf-8'?>
<Context docBase="D:eclipseworkspaceBKGMS" path="/BKGMS" reloadable="true" workDir="D:eclipseworkspaceBKGMSworkorgapachejsp">
<Resource auth="Container" name="better" type="javax.sql.DataSource" maxWait="10000" maxIdle="30" maxActive="100" nome de usuário="sa" senha="sa" driverClassName="com .microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=bkgms"/>
<ResourceLink global="better" name="better" type="javax.sql.DataSource"/>
</Contexto>
Explique: 1.path é a entrada da URL que especifica o acesso à aplicação web
2.docBase especifica o caminho do arquivo da aplicação web, que pode ser um caminho absoluto ou relativo ao atributo appBase do Host
3. tipo
4.maxActive É o número máximo de conexões de banco de dados ativas em DBCP. 0 significa ilimitado
. 5. maxIdle é o número máximo de conexões de banco de dados ociosas em DBCP. 0 significa ilimitado
. a conexão a ser inativa (em milissegundos) é 0, o que significa esperar indefinidamente
7. nome de usuário é o nome de login do banco de dados
8.url
éa
senha de login do banco de dados.
é especificado. A URL para conectar-se ao banco de dados, testDBCP é o nome do meu banco de dados.
O relatório "incapaz de obter conexão: nenhum driver adequado"
é para iniciar o Tomcat a partir do Eclipse. Descobriu-se que org.apache.commons.dbcp.BasicDataSourceFactory não pode ser encontrado durante a inicialização, então factory="org.apache.commons.dbcp. BasicDataSourceFactory" no elemento Resouce é relatado. "Exclua e o erro será resolvido.
Claro, não se esqueça de adicionar web.xml
<recurso-ref>
<descrição>Conexão com banco de dados</descrição>
<res-ref-name>melhor</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Contêiner</res-auth>
</resource-ref>
No entanto, se você usar o SQLSERVER2000, também deverá garantir que o patch do SP4 seja aplicado.