Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment configurer Tomcat pour se connecter à MySQL

1 :Où placer mysql-connector-java-5.1.13-bin dans le répertoire Tomcat ? Dois-je le placer sous Tomcat 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.xml ou server.xml fichiers ?

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.xml fichier et doit être placé sous Tomcat 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 :