티스토리 뷰





반응형

JSON이란?

자바스크립트의 객체 표기법을 제한하여 만든 텍스트 기반의 데이터 교환 표준입니다. 따라서 JSON 데이터는 자바스크립트가 자주 사용되는 웹 환경에서 사용하는 것이 유리합니다. 자바스크립트에서 JSON 데이터를 분석하고 사용하는 것은 매우 간단합니다.

자바스크립트는 JSON 데이터를 처리하기 위한 다음과 같은 메소드를 제공합니다.


1. JSON.stringify()

2. JSON.parse()

3. toJSON()


JSON.stringify() 메소드

인수로 전달받은 자바스크립트 객체를 문자열로 변환해 반환합니다.

ex) JSON.stringify(객체)




JSON.parse() 메소드

JSON.stringify와 반대로 인수로 전달받은 문자열을 자바스크립트 객체로 변환하여 반환합니다.

text에는 변환할 문자열을 전달합니다.

이때 해당 문자열은 반드시 유효한 JSON형식의 문자열이야합니다.

만약 JSON형식에 맞지 않은 문자열이라면, 자바스크립트는 오류를 발생시킬 것입니다.




toJSON() 메소드

자바스크립트의 toJSON() 메소드는 자바스크립트의 Date 객체의 데이터를 JSON 형식의 문자열로 변환 하여 반환합니다.

따라서 이 메소드는 Date.prototype객체에서만 사용 가능합니다.



1
2
3
4
5
6
7
8
9
function send()
    {
        var jsonData ={};
        jsonData.text = $('#messageinput').val();
        jsonData.member ="wpxm2003";
        ws.send(JSON.stringify(jsonData));
        //ws.send(jsonData);
        console.log(typeof JSON.stringify(jsonData));
    }
cs

이런식으로 key : value 형식으로 데이터를 저장한 뒤 ws.send로 톰캣에 보내면 스프링으로 받아 처리를 한다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Override
     protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
       logger.debug(session.getId()+"님 으로부터 메시지를 받음, 내용 : "+message.getPayload());
       
       //JSON.stringify로 넘어온 데이터 JSON형태로 다시 복원
       JSONParser parser = new JSONParser();
       Object obj = parser.parse(message.getPayload());
       JSONObject json = (JSONObject)obj;
       logger.debug(json+"");
       logger.debug("get으로 꺼냄 : "+json.get("member"));
       
       
       for (WebSocketSession sess : sessionList) {
         sess.sendMessage(new TextMessage(session.getId() + " : " + message.getPayload()));
       }
     }
cs

위와 같이 parser로 텍스트 문자를 object로 바꾼 뒤 그걸 다시 JSON으로 변환하면 key : value형식으로 데이터를 가져올 수 있다.



반응형
댓글
반응형
최근에 달린 댓글
글 보관함
Total
Today
Yesterday
최근에 올라온 글
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31