sql >> Databasteknik >  >> RDS >> Mysql

Hur man konfigurerar Tomcat för att ansluta till MySQL

1:Var ska du placera mysql-connector-java-5.1.13-bin i Tomcat-katalogen? Ska jag placera den under Tomcat 6.0\webapps\myapp\WEB-INF\lib ?

Det beror på var anslutningarna ska hanteras. Normalt skulle du vilja skapa en anslutningspoolad JNDI-datakälla för att förbättra anslutningsprestandan. I så fall hanterar Tomcat anslutningarna och måste ha tillgång till JDBC-drivrutinen. Du bör sedan släppa JAR-filen i Tomcat/lib .

Men om du gör det på det grundläggande sättet med DriverManager#getConnection() , då spelar det faktiskt ingen roll om du släpper det i Tomcat/lib eller YourApp/WEB-INF/lib . Du måste dock inse att den i Tomcat/lib kommer att gälla för alla distribuerade webbappar och den i YourApp/WEB-INF/lib kommer att åsidosätta den i Tomcat/lib endast för den specifika webbappen.

2:Behöver jag konfigurera context.xml eller server.xml filer?

Det beror på var anslutningarna ska hanteras. När du använder en JNDI-datakälla räcker det att konfigurera den med YourApp/META-INF/context.xml som följer (skapa bara en fil om den inte finns):

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

och YourApp/WEB-INF/web.xml enligt följande:

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

Om du gör det den grundläggande DriverManager sätt, då är det upp till dig. Hårdkodad, egenskapsfil, XML-fil, etcetera. Du borde klara det själv. Tomcat kommer inte (och kan) inte göra något användbart för dig.

Det bör noteras att YourApp/META-INF/context.xml är specifik för Tomcat och kloner. Varje servletcontainer/appserver har sitt eget sätt att definiera JNDI-resurser. I Glassfish till exempel, skulle du vilja göra det genom det webbaserade administratörsgränssnittet.

3:Ska jag skriva web.xml fil och måste placeras under Tomcat 6.0\webapps\myapp\WEB-INF ? Om ja, vad ska innehållet i filen vara?

Du bör alltid tillhandahålla en. Det är inte bara för att konfigurera resurser, utan också för att definiera servlets, filter, lyssnare och den typen av obligatoriska saker för att köra din webbapp. Den här filen är en del av standardservlet API.

Se även:



  1. Använd flera konfliktmål i ON CONFLICT-satsen

  2. Automatisk ökningskolumn – Sekvens som standardvärde i Oracle

  3. Använda JavaFX-tabeller för att organisera data

  4. Hur man visar radvärden som kolumner i MySQL