언어/자바

HttpServletRequest로 Json 데이터 받기

토킹포테토 2023. 4. 27. 14:19
728x90

Json Data 파라메타가 아래라고 가정할 경우,

{ 
	"userid" : "testid",
    "userJumin" : "9800000000000"
 }

 

* HttpServletRequest로 온 Json 데이터 파싱

public ModelAndView httpJsonTest(HttpServletRequest request, HttpServletResponse response) throws UserDataHandleException, ModelBindingException {
	System.out.println("=======httpJsonTest========");
		
		String bodyJson = "";
        
		StringBuilder stringBuilder = new StringBuilder();
        BufferedReader br = null;
        //한줄씩 담을 변수
        String line = "";
        
        try {
        	//body내용 inputstream에 담는다.
            InputStream inputStream = request.getInputStream();
            if (inputStream != null) {
                br = new BufferedReader(new InputStreamReader(inputStream,"UTF-8"));
                System.out.println("=======br========" + br);
                //더 읽을 라인이 없을때까지 계속
                while ((line = br.readLine()) != null) {
                    stringBuilder.append(line);
                }
            }else {
            	logger.info("Data 없음");
            }
        } catch (IOException e) {
        	e.printStackTrace();
        } 
        System.out.println("stringBuilder" + stringBuilder.toString());
        
        //json Data String으로 변환 
        bodyJson = stringBuilder.toString();
        JsonElement element = JsonParser.parseString(bodyJson);
      	String userName = element.getAsJsonObject().get("userName").getAsString();
        String userJumin = element.getAsJsonObject().get("userJumin").getAsString();

       	System.out.println("==============="+loginInfo);
        
		return null;
	}

'언어 > 자바' 카테고리의 다른 글

getter, setter 사용 이유 및 지양해야 하는 이유  (0) 2023.05.11
컴파일 언어 VS 인터프리터 언어  (0) 2023.05.10
net.sf.json VS json-simple  (0) 2023.04.26
[JAVA] String.format()  (0) 2023.04.19
[JAVA] Char to Int  (0) 2023.04.19