当前位置:编程学习 > html/css >>

[REST Jersey] @QueryParam Demo

HelloWorldResource.java
 
  package com.example; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; import javax.ws.rs.DefaultValue; /** * * @author */ @Path("helloworld") public class HelloWorldResource { public static final String CLICHED_MESSAGE = "Hello World!"; /* @GET @Produces("text/plain") public String getHello() { return CLICHED_MESSAGE; } */ @GET @Path("/get") @Produces("text/plain") //@Produces("application/json") public String getQueryObj( @QueryParam ("featureID") @DefaultValue("0") String fid, @QueryParam ("userID") @DefaultValue( "0" ) int uid, @QueryParam ("color") @DefaultValue("red") ColorParam clr // color default value: green, blue ) { return new String("QueryParam: {"+ fid + ": " + uid + " : " + clr + "}." + CLICHED_MESSAGE); } }

 

 
 
ColorParam.java
  package com.example; import java.awt.Color; import javax.ws.rs.WebApplicationException; import java.lang.reflect.Field; public class ColorParam extends Color { public ColorParam(String s) { super(getRGB(s)); } private static int getRGB(String s) { if (s.charAt(0) == '#') { try { Color c = Color.decode("0x" + s.substring(1)); return c.getRGB(); } catch (NumberFormatException e) { throw new WebApplicationException(400); } } else { try { Field f = Color.class.getField(s); return ((Color)f.get(null)).getRGB(); } catch (Exception e) { throw new WebApplicationException(400); } } } }

 

 
Call it after the above java files are packaged as a war deployed in tomcat container.
 
http://hostname:8080/易做图-service-webapp/webapi/helloworld/get?featureID=12  
QueryParam: {12: 0 : com.example.ColorParam[r=255,g=0,b=0]}.Hello World!  
  
http://hostname:8080/易做图-service-webapp/webapi/helloworld/get?featureID=12&userID=123  
QueryParam: {12: 123 : com.example.ColorParam[r=255,g=0,b=0]}.Hello World!  
  
http://hostname:8080/易做图-service-webapp/webapi/helloworld/get?
featureID=12&userID=123&color=yellow  
QueryParam: {12: 123 : com.example.ColorParam[r=255,g=255,b=0]}.Hello World!  
 
补充:web前端 , HTML/CSS  ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,