1 //action處理頁面發來的String,put到map轉換成Json格式的String字符串 2 @RequestMapping("/seleteOaOrder") 3 @ResponseBody 4 public Object seleteOaOrder(String param){//param = "小明"; 5 System.out.println("+++++++++++++++++param:"+param); 6 if(param!=null){ 7 RequestEntity request = new RequestEntity(); 8 request.setUserName("0755pss001"); 9 request.setPwd("pss"); 10 Map<String,String> map = new HashMap<String, String>(); 11 map.put("applicant", param); 12 System.out.println("++++++++++++++++++轉json之前的map對象:"+map.toString()); 13 ObjectMapper json = new ObjectMapper(); 14 String params = null; 15 try { 16 //把map對象轉成json格式的String字符串 17 params = json.writeValueAsString(map); 18 System.out.println("++++++++++++++++++轉成的json格式字符串:"+params); 19 } catch (JsonGenerationException e) { 20 // TODO Auto-generated catch block 21 e.printStackTrace(); 22 } catch (JsonMappingException e) { 23 // TODO Auto-generated catch block 24 e.printStackTrace(); 25 } catch (IOException e) { 26 // TODO Auto-generated catch block 27 e.printStackTrace(); 28 } 29 request.setParams(params); 30 ResponseEntity response = buyOrderService.seleteOaOrder(request); 31 return response.getResult(); 32 } 33 return null; 34 }
后台打印的結果:
轉json之前的map對象:{applicant:小明}
轉成的json格式字符串:{"applicant":"小明"};
在new Map對象的時候可以寫成Map<String,Integer> map = new HashMap<String, Integer>();
這里param是一個int,等於2,
轉json之前的map對象:{applicant:2}
轉成的json格式字符串:{"applicant":2};這里param不會有雙引號。
主要是用ObjectMapper(
import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;)
對map對象寫成JSON格式的字符串。