1:Di mana menempatkan
mysql-connector-java-5.1.13-bin
di direktori Tomcat? Haruskah saya meletakkannya di bawahTomcat 6.0\webapps\myapp\WEB-INF\lib
?
Itu tergantung di mana koneksi akan dikelola. Biasanya Anda ingin membuat sumber data JNDI kumpulan koneksi untuk meningkatkan kinerja koneksi. Dalam hal ini, Tomcat mengelola koneksi dan perlu memiliki akses ke driver JDBC. Anda kemudian harus meletakkan file JAR di Tomcat/lib
.
Tetapi jika Anda melakukannya dengan cara dasar menggunakan DriverManager#getConnection()
, maka sebenarnya tidak masalah jika Anda memasukkannya ke Tomcat/lib
atau YourApp/WEB-INF/lib
. Namun Anda perlu menyadari bahwa yang ada di Tomcat/lib
akan berlaku untuk semua aplikasi web yang dikerahkan dan yang ada di YourApp/WEB-INF/lib
akan menimpa yang ada di Tomcat/lib
hanya untuk aplikasi web tertentu.
2:Apakah saya perlu mengonfigurasi
context.xml
atauserver.xml
file?
Itu tergantung di mana koneksi akan dikelola. Saat menggunakan sumber data JNDI, cukup untuk mengonfigurasinya menggunakan YourApp/META-INF/context.xml
seperti berikut (buat saja file jika tidak ada):
<?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>
dan YourApp/WEB-INF/web.xml
sebagai berikut:
<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>
Jika Anda melakukannya, DriverManager
dasar cara, maka itu semua terserah Anda. Hardcoded, file properti, file XML, dan sebagainya. Anda harus mengelolanya sendiri. Tomcat tidak akan (dan tidak bisa) melakukan sesuatu yang berguna untuk Anda.
Harus diperhatikan bahwa YourApp/META-INF/context.xml
khusus untuk Tomcat dan klon. Setiap servletcontainer/appserver memiliki caranya sendiri untuk mendefinisikan sumber daya JNDI. Di Glassfish misalnya, Anda ingin melakukannya melalui antarmuka admin berbasis web.
3:Haruskah saya menulis
web.xml
file dan perlu ditempatkan di bawahTomcat 6.0\webapps\myapp\WEB-INF
? Jika Ya, lalu apa yang seharusnya menjadi isi file?
Anda harus selalu menyediakannya. Ini tidak hanya untuk mengonfigurasi sumber daya, tetapi juga untuk mendefinisikan servlet, filter, pendengar, dan hal-hal wajib semacam itu untuk menjalankan aplikasi web Anda. File ini adalah bagian dari API Servlet standar.
Lihat juga:
- Apakah aman menggunakan instance java.sql.Connection statis dalam sistem multithreaded?
- Bagaimana saya harus terhubung ke database/sumber data JDBC dalam aplikasi berbasis servlet?
- Di mana saya harus menempatkan driver JDBC untuk koneksi Tomcat kolam renang?
- Tutorial DAO - tutorial dasar JDBC/DAO, ditargetkan di Tomcat/JSP/Servlet