Định nghĩa request URL trong ứng dụng Jakarta EE RESTful Web Services

Trong ứng dụng Jakarta EE RESTful Web Services, để định nghĩa request URL, chúng ta sẽ sử dụng annotation @Path. Annotation này chỉ có duy nhất một attribute là value() với giá trị là request URL mà chúng ta muốn định nghĩa.

Các bạn có thể định nghĩa annotation @Path ở class level hoặc method level.

Định nghĩa ở class level là bắt buộc các bạn nhé!

Ở class level thì giá trị được định nghĩa cho annotation này sẽ là prefix cho tất cả các request được định nghĩa bên trong class.

Ví dụ như mình có ứng dụng định nghĩa request URL như sau:

thì các bạn có thể request tới ứng dụng này với các request URL như sau:

Nếu các bạn không muốn định nghĩa prefix cho các request URL bên trong class thì có thể định nghĩa annotation @Path với giá trị @Path(“/”) hoặc @Path(“”) các bạn nhé!

Định nghĩa annotation @Path ở method level giúp chúng ta chỉ định rõ request URL nào được handle bởi method nào.

Để định nghĩa path parameter cho các request URL, chúng ta sẽ định nghĩa cặp “{“, “}” với tên parameter ở giữa cặp này trong annotation @Path.

Giá trị của parameter sẽ được bind vào request URL sử dụng annotation @PathParam, ví dụ như sau:

Trong ví dụ trên, mình đã định nghĩa một path parameter tên là name.

Kết quả:
Để định nghĩa request parameter cho các request URL, chúng ta sẽ sử dụng annotation @QueryParam.

Ví dụ như sau:

Với ví dụ này thì mình đã định nghĩa một query parameter tên là name.

Kết quả:

Jakarta EE RESTful Web Service còn hỗ trợ chúng ta định nghĩa request URL với matrix param, sử dụng annotation @MatrixParam.

Matrix param giúp chúng ta có thể định nghĩa value của parameter phức tạp hơn, như là một collection chẳng hạn.

Các matrix parameter này ngăn cách nhau bởi dấu chấm phẩy.

Ví dụ, mình định nghĩa request URL như sau:

Nếu bây giờ, mình request tới URL http://localhost:8080/hello;name=khanh,Java;address=A,B, các bạn sẽ thấy kết quả như sau:

Add Comment