1:Kam umístit
mysql-connector-java-5.1.13-bin
v adresáři Tomcat? Mám to umístit podTomcat 6.0\webapps\myapp\WEB-INF\lib
?
To závisí na tom, kde mají být připojení spravována. Normálně byste chtěli vytvořit zdroj dat JNDI sdružený s připojením, abyste zlepšili výkon připojení. V takovém případě spravuje připojení Tomcat a potřebuje mít přístup k ovladači JDBC. Poté byste měli přetáhnout soubor JAR do Tomcat/lib
.
Ale pokud to děláte základním způsobem pomocí DriverManager#getConnection()
, pak je vlastně jedno, jestli to pustíte do Tomcat/lib
nebo YourApp/WEB-INF/lib
. Musíte si však uvědomit, že ten v Tomcat/lib
bude platit pro všechny nasazené webové aplikace a to v YourApp/WEB-INF/lib
přepíše ten v Tomcat/lib
pouze pro konkrétní webovou aplikaci.
2:Musím konfigurovat
context.xml
neboserver.xml
soubory?
To závisí na tom, kde mají být připojení spravována. Když používáte zdroj dat JNDI, stačí jej nakonfigurovat pomocí YourApp/META-INF/context.xml
jako následuje (stačí vytvořit soubor, pokud neexistuje):
<?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>
a YourApp/WEB-INF/web.xml
takto:
<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>
Pokud to děláte, základní DriverManager
způsobem, pak je vše na vás. Pevně kódovaný, soubor vlastností, soubor XML atd. Měli byste to zvládnout sami. Tomcat pro vás neudělá (a nemůže) nic užitečného.
Upozorňujeme, že YourApp/META-INF/context.xml
je specifický pro Tomcat a klony. Každý servletcontainer/appserver má svůj vlastní způsob definování prostředků JNDI. Například v aplikaci Glassfish to chcete provést prostřednictvím webového rozhraní správce.
3:Mám napsat
web.xml
soubor a je třeba jej umístit doTomcat 6.0\webapps\myapp\WEB-INF
? Pokud ano, jaký by měl být obsah souboru?
Vždy byste měli jeden dodat. Nejde jen o konfiguraci prostředků, ale také o definování servletů, filtrů, posluchačů a podobných povinných věcí pro spuštění vaší webové aplikace. Tento soubor je součástí standardního rozhraní Servlet API.
Viz také:
- Je bezpečné používat statickou instanci java.sql.Connection ve vícevláknovém systému?
- Jak se mám připojit k databázi/zdroji dat JDBC v aplikaci založené na servletech?
- Kam musím umístit ovladač JDBC pro připojení Tomcatu bazén?
- Výukový program DAO – základní výukový program JDBC/DAO, cílený na Tomcat/JSP/Servlet