Servlet-Url Pattern

Trong Java Servlet, url-pattern là một thuộc tính quan trọng được sử dụng để định nghĩa đường dẫn URL mà một Servlet cụ thể sẽ xử lý. Khi một yêu cầu được gửi đến cho ứng dụng web, Servlet Container sẽ sử dụng url-pattern để xác định Servlet nào sẽ được gọi để xử lý yêu cầu.

Có hai cách để định nghĩa url-pattern cho một Servlet trong tệp web.xml:

  1. Sử dụng đường dẫn tuyệt đối: Bạn có thể định nghĩa một đường dẫn tuyệt đối cho Servlet trong phần url-pattern của phần tử servlet-mapping. Ví dụ: /<servlet-name> hoặc /myServlet.
  2. Sử dụng đường dẫn tương đối: Bạn có thể định nghĩa một đường dẫn tương đối để liên kết với đường dẫn gốc của ứng dụng web. Ví dụ: /servlet/* để chỉ định rằng tất cả các yêu cầu với tiền tố /servlet sẽ được chuyển đến Servlet.

Ngoài ra, bạn có thể sử dụng ký tự đại diện * để định nghĩa các đường dẫn phức tạp hơn. Ví dụ: /servlet/* sẽ phù hợp với tất cả các URL bắt đầu bằng /servlet/.

Ví dụ:

<servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>com.example.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/myservlet/*</url-pattern>
</servlet-mapping>

Trong ví dụ này, Servlet MyServlet sẽ được kết nối với URL bắt đầu bằng /myservlet/, ví dụ: /myservlet/hello hoặc /myservlet/goodbye.