Sepengetahuan saya, konvensi ini telah disebarkan oleh Struts1. Panduan pengguna mengatakannya seperti ini:
Catatan: Materi di bagian ini tidak spesifik untuk Struts. Konfigurasi pemetaan servlet ditentukan dalam Spesifikasi Servlet Java. Bagian ini menjelaskan cara paling umum untuk mengkonfigurasi aplikasi.
Ada dua pendekatan umum untuk menentukan URL yang akan diproses oleh pengontrol servlet - pencocokan awalan dan pencocokan ekstensi. Entri pemetaan yang sesuai untuk setiap pendekatan akan dijelaskan di bawah ini.
Pencocokan prefiks berarti Anda ingin semua URL yang dimulai (setelah bagian jalur konteks) dengan nilai tertentu untuk diteruskan ke servlet ini. Entri seperti itu mungkin terlihat seperti ini:
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>/do/*</url-pattern>
</servlet-mapping>
yang berarti URI permintaan untuk mencocokkan /logon
jalur yang dijelaskan sebelumnya mungkin terlihat seperti ini:
http://www.mycompany.com/myapplication/do/logon
di mana /myapplication
jalur konteks tempat aplikasi Anda di-deploy.
Pemetaan ekstensi, di sisi lain, mencocokkan URI permintaan dengan servlet tindakan berdasarkan fakta bahwa URI diakhiri dengan titik yang diikuti dengan serangkaian karakter yang ditentukan. Misalnya, servlet pemrosesan JSP dipetakan ke *.jsp
pola sehingga dipanggil untuk memproses setiap halaman JSP yang diminta. Untuk menggunakan *.do
ekstensi (yang menyiratkan "melakukan sesuatu") , entri pemetaan akan terlihat seperti ini:
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
dan URI permintaan untuk mencocokkan
/logon
jalur yang dijelaskan sebelumnya mungkin terlihat seperti ini:
http://www.mycompany.com/myapplication/logon.do
PERINGATAN - Framework tidak akan beroperasi dengan benar jika Anda mendefinisikan lebih dari satu <servlet-mapping>
elemen untuk controller servlet.
PERINGATAN - Jika Anda menggunakan dukungan modul baru sejak versi 1.1, Anda harus menyadari bahwa hanya pemetaan ekstensi yang didukung.