JSON

2023. 6. 20. 22:45Front/JS

1. JSON이란?

- JavaScript Object Notation

- 웹과 컴퓨터 프로그램에서 용량이 적은 데이터를 교환하기 위해 데이터 객체를 {속성 : 값}의 쌍 형태로 표현

- 자바스크립트(JavaScript) 토대로 개발되었다.

- 여러 프로그래밍 언어에도 사용할 수 있는 독립형 언어

- 텍스트로 기술하여 사람도 쉽게 읽고 작성할 수 있다.

- 웹 브라우저와 웹 서버 간 비동기 통신, 웹 서버 간의 데이터 교환 등에 주로 사용된다.

[참고 홈페이지] https://www.w3schools.com/js/js_json_intro.asp

 

JSON Introduction

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

2. JSON

1) 형태 : {key : value}

2) JSON 형태로 보내기

- VO를 JSON 형태로 보내기: {"vo의 변수명" : "값", ..}

- List<VO> JSON 형태로 보내기: [{}, {}, ... ]

3) JS에서 변환하기

- String -> JSON 변환

JSON. parse ("json 문자열");

- JSON -> String 변환

JSON.stringify (json object)

4) 사용법

- 변수명.키

- 변수명["키"]

- 변수명[인덱스번호].키

<!-- jackson-databind -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.10.1</version>
</dependency>
@GetMapping("json1")
public BoardVO json1() throws Exception{
    ModelAndView mv = new ModelAndView();
    BoardVO boardVO = noticeService.boardSelect(2);

    String json = "{";
    json = json + "\"num\":\"" + boardVO.getNum() +"\",";
    json = json + "\"title\":\"" + boardVO.getTitle() + "\"}";

    mv.addObject("result", "{\"name\":\"hj\"}");
    mv.addObject("result", json);
    mv.setViewName("common/ajaxResult");
    return boardVO;
}
@GetMapping("json1")
    @ResponseBody
    public BoardVO json1() throws Exception{
        BoardVO boardVO = noticeService.boardSelect(2);
        return boardVO;
    }