sql >> Base de Datos >  >> RDS >> Mysql

Cómo configurar Tomcat para conectarse con MySQL

1:Dónde colocar mysql-connector-java-5.1.13-bin en el directorio de Tomcat? ¿Debería colocarlo en Tomcat 6.0\webapps\myapp\WEB-INF\lib? ?

Eso depende de dónde se vayan a gestionar las conexiones. Normalmente, le gustaría crear una fuente de datos JNDI agrupada de conexión para mejorar el rendimiento de la conexión. En ese caso, Tomcat administra las conexiones y necesita tener acceso al controlador JDBC. Luego debe soltar el archivo JAR en Tomcat/lib .

Pero si lo hace de la manera básica usando DriverManager#getConnection() , entonces, de hecho, no importa si lo coloca en Tomcat/lib o YourApp/WEB-INF/lib . Sin embargo, debe darse cuenta de que el de Tomcat/lib se aplicará a todos implementó aplicaciones web y que el que está en YourApp/WEB-INF/lib anulará el de Tomcat/lib solo para la aplicación web en particular.

2:¿Necesito configurar context.xml o server.xml archivos?

Eso depende de dónde se vayan a gestionar las conexiones. Cuando se usa una fuente de datos JNDI, basta con configurarla usando YourApp/META-INF/context.xml como sigue (simplemente cree un archivo si no existe):

<?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>

y el YourApp/WEB-INF/web.xml de la siguiente manera:

<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>

Si lo está haciendo, el DriverManager básico manera, entonces todo depende de usted. Codificado, archivo de propiedades, archivo XML, etcétera. Deberías gestionarlo tú mismo. Tomcat no hará (y no puede) hacer nada útil por usted.

Se debe tener en cuenta que YourApp/META-INF/context.xml es específico para Tomcat y clones. Cada servletcontainer/appserver tiene su propia forma de definir los recursos JNDI. En Glassfish, por ejemplo, le gustaría hacerlo a través de la interfaz de administración basada en web.

3:¿Debería escribir web.xml? archivo y debe colocarse en Tomcat 6.0\webapps\myapp\WEB-INF ? En caso afirmativo, ¿cuál debería ser el contenido del archivo?

Siempre debe proporcionar uno. No es solo para configurar recursos, sino también para definir servlets, filtros, oyentes y ese tipo de cosas obligatorias para ejecutar su aplicación web. Este archivo es parte de la API de Servlet estándar.

Ver también: