Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como configurar o Tomcat para se conectar ao MySQL


1:Onde colocar mysql-connector-java-5.1.13-bin no diretório do Tomcat? Devo colocá-lo em Tomcat 6.0\webapps\myapp\WEB-INF\lib ?

Isso depende de onde as conexões devem ser gerenciadas. Normalmente, você gostaria de criar uma fonte de dados JNDI com pool de conexão para melhorar o desempenho da conexão. Nesse caso, o Tomcat está gerenciando as conexões e precisa ter acesso ao driver JDBC. Você deve então soltar o arquivo JAR em Tomcat/lib .

Mas se você estiver fazendo isso da maneira básica usando DriverManager#getConnection() , então não importa se você o soltar em Tomcat/lib ou YourApp/WEB-INF/lib . No entanto, você precisa perceber que aquele em Tomcat/lib será aplicado a todos webapps implantados e aquele em YourApp/WEB-INF/lib substituirá o do Tomcat/lib apenas para o aplicativo da web específico.

2:Preciso configurar context.xml ou server.xml arquivos?

Isso depende de onde as conexões devem ser gerenciadas. Ao usar uma fonte de dados JNDI, basta configurá-la usando YourApp/META-INF/context.xml como segue (basta criar arquivo se não existir):
<?xml version="1.0" encoding="UTF-8"?>
<Context>
    <Resource
        name="jdbc/yourdb" type="javax.sql.DataSource"
        maxActive="100" maxIdle="30" maxWait="10000" 
        url="jdbc:mysql://localhost:3306/yourdb"
        driverClassName="com.mysql.jdbc.Driver"
        username="yourname" password="yourpass"
    />
</Context>

e o YourApp/WEB-INF/web.xml do seguinte modo:
<resource-env-ref>
    <resource-env-ref-name>jdbc/yourdb</resource-env-ref-name>
    <resource-env-ref-type>javax.sql.DataSource</resource-env-ref-type>
</resource-env-ref>

Se você estiver fazendo isso, o DriverManager básico maneira, então tudo depende de você. Codificado, arquivo de propriedades, arquivo XML, etc. Você deve gerenciá-lo você mesmo. O Tomcat não fará (e não pode) fazer nada útil para você.

Observe que o YourApp/META-INF/context.xml é específico para Tomcat e clones. Cada servletcontainer/appserver tem sua própria maneira de definir recursos JNDI. No Glassfish, por exemplo, você gostaria de fazer isso por meio da interface de administração baseada na web.

3:Devo escrever web.xml arquivo e precisa colocar em Tomcat 6.0\webapps\myapp\WEB-INF ? Se sim, qual deve ser o conteúdo do arquivo?

Você deve sempre fornecer um. Não é só configurar recursos, mas também definir servlets, filtros, listeners e esse tipo de coisa obrigatória para rodar seu webapp. Este arquivo faz parte da API Servlet padrão.

Veja também: