JAX-RS @MatrixParam example

In this tutorial we will discuss about Matrix parameters, these are a set of "name=value" in URI path,
for example-
/salary/21111;empname=dinesh

In above URI, the matrix parameter is "empname=dinesh", separate by a semi colon ";".
1. @MatrixParam example
See a full example of using @MatrixParam in JAX-RS.
import javax.ws.rs.GET;
import javax.ws.rs.MatrixParam;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.Response;
 
@Path("/employee")
public class EmployeeController {
 
 @GET
 @Path("{empid}")
 public Response getEmpSalary(@PathParam("empid") String empid,
   @MatrixParam("empname") String empname,
   @MatrixParam("jobtype") String jobtype) {
 
  return Response
   .status(200)
   .entity("getEmpSalary is called, empid : " + empid
    + ", empname : " + empname + ", jobtype : " + jobtype)
   .build();
 
 }
 
}

See following URI patterns and result.

1. URI Pattern : http://localhost:8181/sdnext/doj/employee/21212/

getEmpSalary is called, empid : 21212, empname : null, jobtype : null

2. URI Pattern : “http://localhost:8181/sdnext/doj/employee/21212;empname=dinesh

getEmpSalary is called, empid : 21212, empname : dinesh, jobtype : null

3. URI Pattern : “http://localhost:8181/sdnext/doj/employee/21212;empname=dinesh;jobtype=Software”

getEmpSalary is called, empid : 21212, empname : dinesh, jobtype : Software

4. URI Pattern : “http://localhost:8181/sdnext/doj/employee/21212;jobtype=Software;empname=dinesh”

getEmpSalary is called, empid : 21212, empname : dinesh, jobtype : Software


Download SourceCode
JAX-RS @MatrixParam example.zip




References
1. JAVA REST Web Services
2. Wikipedia for REST Web Service

 



<<Previous <<   || Index ||   >>Next >>


No comments:

Post a Comment