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:
- ¿Es seguro usar una instancia java.sql.Connection estática en un sistema multiproceso?
- ¿Cómo debo conectarme a la base de datos/fuente de datos JDBC en una aplicación basada en servlet?
- ¿Dónde tengo que colocar el controlador JDBC para la conexión de Tomcat? piscina?
- Tutorial de DAO:tutorial básico de JDBC/DAO, dirigido en Tomcat/JSP/Servlet