1 :Où placer
mysql-connector-java-5.1.13-bindans le répertoire Tomcat ? Dois-je le placer sousTomcat 6.0\webapps\myapp\WEB-INF\lib?
Cela dépend de l'endroit où les connexions doivent être gérées. Normalement, vous souhaitez créer une source de données JNDI regroupée en connexions pour améliorer les performances de connexion. Dans ce cas, Tomcat gère les connexions et doit avoir accès au pilote JDBC. Vous devez ensuite déposer le fichier JAR dans Tomcat/lib .
Mais si vous le faites de manière basique en utilisant DriverManager#getConnection()
, alors peu importe si vous le déposez dans Tomcat/lib ou YourApp/WEB-INF/lib . Vous devez cependant réaliser que celui de Tomcat/lib s'appliquera à tous webapps déployées et celle dans YourApp/WEB-INF/lib remplacera celui de Tomcat/lib uniquement pour l'application Web en question.
2 :Dois-je configurer
context.xmlouserver.xmlfichiers ?
Cela dépend de l'endroit où les connexions doivent être gérées. Lors de l'utilisation d'une source de données JNDI, il suffit de la configurer à l'aide de YourApp/META-INF/context.xml comme suit (créez simplement un fichier s'il n'existe pas):
<?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>
et le YourApp/WEB-INF/web.xml comme suit :
<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 vous le faites, le DriverManager de base façon, alors tout dépend de vous. Codé en dur, fichier de propriétés, fichier XML, etc. Vous devriez le gérer vous-même. Tomcat ne fera (et ne pourra) rien faire d'utile pour vous.
Notez que le YourApp/META-INF/context.xml est spécifique à Tomcat et aux clones. Chaque servletcontainer/appserver a sa propre façon de définir les ressources JNDI. Dans Glassfish, par exemple, vous aimeriez le faire via l'interface d'administration Web.
3 :Dois-je écrire
web.xmlfichier et doit être placé sousTomcat 6.0\webapps\myapp\WEB-INF? Si oui, alors quel devrait être le contenu du fichier ?
Vous devez toujours en fournir un. Il ne s'agit pas seulement de configurer des ressources, mais aussi de définir des servlets, des filtres, des écouteurs et ce genre de choses obligatoires pour exécuter votre application Web. Ce fichier fait partie de l'API Servlet standard.
Voir aussi :
- Est-il sûr d'utiliser une instance statique de java.sql.Connection dans un système multithread ?
- Comment dois-je me connecter à la base de données/source de données JDBC dans une application basée sur un servlet ?
- Où dois-je placer le pilote JDBC pour la connexion de Tomcat piscine ?
- Tutoriel DAO - Tutoriel JDBC/DAO de base, ciblé sur Tomcat/JSP/Servlet