resteasy传值方式

来源:互联网 发布:电纸书 知乎 编辑:程序博客网 时间:2024/06/06 09:41

1.@pathparam

    @GET      @Path("delProByPNumber/{param}")      @Produces("application/json; charset=utf-8")      public Response delPro(@PathParam("param") String  pNumber){          session.delete("production.delete", pNumber);          session.commit();          List list=queryAllPro();        return Response.status(201).entity(list).build();      }      //访问路径:http://IP:PORT/应用上下文/delProByPNumber/7,其中7为传入参数 


2.@queryParam
    @GET      @Path("addAcc/parameters")      @Produces("application/json; charset=utf-8")      public Response addCus(              @QueryParam("accname") String accname,             @QueryParam("department") String   department,            @QueryParam("accnumber") long accnumber,              @QueryParam("username") String username              ) {          Account account=new Account();          account.setAccname(accname);          account.setDepartment(department);         account.setAccnumber(accnumber);          account.setUsername(username);          session.insert("account.addAcc",account);          session.commit();            return Response.status(201).entity(queryOne(accname)).build();      }      //访问路径:http://IP:PORT/应用上下文/addAcc/parameters?accname=rr&department=heda&accnumber=6666&username=yu

3.@FormParam
    //form表单提交方式      @POST      @Path("getName")      public String  getName(@FormParam("fname") String fname,@FormParam("lname") String lname) {          String result = "RESTEasy Hello World : " + fname+lname;          System.out.println("fname"+fname);          return result;      }

<!---前台form表单提交---><html>  <head>  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  <title>Insert title here</title>  </head>  <body>      <form action="http://IP:PORT/应用上下文/getName" method="POST">          First name: <input type="text" name="fname" />          Last name: <input type="text" name="lname" />          <input type="submit" value="Submit" />      </form>  </body>  </html>  

4.接收json参数,不需要标注
    @POST      @Path("test")      @Produces("application/json; charset=utf-8")      public Map<String, Object> getName(String data){          String name = null;          String password = null;          //解析传入json数据          ObjectMapper objectMapper = new ObjectMapper();          Map<String, Object> maps;          try {              maps = objectMapper.readValue(data, Map.class);              name = (String) maps.get("name");              password = (String) maps.get("password");          } catch (Exception e) {            e.printStackTrace();          }        //返回map          Map<String, Object> map = new HashMap<String, Object>();          map.put("name", name);          map.put("password", password);          return map;      }  }  
<!----前台页面----><html>  <head>  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  <script type="text/javascript" src="js/jquery-2.0.0.js"></script> <script type="text/javascript">  function showInfo() {      var name = encodeURI($('#name').val(),"UTF-8");      var password = encodeURI($('#password').val(),"UTF-8");        $.ajax({                  type : 'post',                  url : 'http://IP:PORT/应用上下文/test',                  data: JSON.stringify({ "name": name, "password": password  }),                  dataType: "json",                  contentType: "application/json; charset=UTF-8",                  success : function(result) {                      var name2=result.name;                      var password2=result.password;                      alert("name2:"+name2+"======password2:"+password2);                  },                  error : function erryFunction() {                      alert("error");                  }              });  }  </script>    <title>postDate</title>  </head>  <body>      <h2>post_data测试</h2>      name:<input type="text" id="name" /><br>      password:<input type="text" id="password" /><br>      <button type="submit" onclick="showInfo()">提交</button>  </body>  </html>  


原创粉丝点击