프로그램 작성

JSON – 초보자를 위한 빠른 가이드

2021년 10월 30일

JSON은 다음을 기반으로 하는 라이브러리입니다. 자바스크립트 스크립팅 언어 , JSON을 Java 객체로 또는 그 반대로 직렬화하는 데 사용됩니다. JSON 라이브러리는 오픈 소스이므로 자유롭게 사용할 수 있습니다. 이 문서는 JSON에 대한 빠른 가이드입니다. 이 게시물에서 JSON에 대한 모든 것을 배울 것입니다.

목차

JSON이란 무엇입니까?

JSON은 자바 스크립트 객체 표기법 . JSON은 다음과 같은 여러 데이터 개체를 전송하고 저장하기 위해 사람이 읽을 수 있고 이해할 수 있는 데이터를 사용하는 텍스트 형식입니다. 배열 , 속성-값 쌍 등입니다. JSON 라이브러리에는 직렬화 가능한 값이 들어 있습니다. JSON 텍스트 형식은 언어 독립적입니다. JSON은 JavaScript 프로그래밍 언어에서 확장되었습니다.

2000년대 초반, 더글라스 크록포드 JSON 데이터 형식을 지정했습니다. JSON의 공식 웹사이트는 2002년에 출시되었으며, www.json.org . 나중에 JSON은 매우 유명해졌습니다. 2005년에 JSON에는 다음에서 제공하는 웹 서비스가 포함되었습니다. 야후! . JSON은 전 세계적으로 인기를 얻기 시작했습니다. 2013년에는 ECMA 국제 표준으로 존재했습니다. 최신 JSON 버전은 2017년에 출시되었습니다. ECMAScript는 JSON의 상위 집합입니다.

JSON은 상태 비저장 시스템 및 다음과 같은 플러그인을 요구하지 않고 브라우저에 대한 서버의 통신 프로토콜에 사용됩니다. 자바 애플릿 또는 플래시 . 이 Java 기반 라이브러리에는 인터넷 미디어 유형 또는 MIME 유형은 application/json인 반면 JSON의 파일 확장자는 .json입니다. JSON의 균일 유형 식별자는 public.json입니다. JSON은 JavaScript 스크립팅 언어에서 확장되었기 때문에 일반적으로 JavaScript와 함께 사용됩니다. 이 코드는 JSON 데이터를 구문 분석하고 생성하기 위해 여러 프로그래밍 언어로 사용할 수 있습니다.

JSON 구문 및 예

여기서는 JSON 구문이 어떻게 되는지 살펴보겠습니다. JSON 구문은 JavaScript에서 확장된 JSON이므로 JavaScript 구문의 하위 집합입니다. JSON 구문에는 다음이 포함됩니다.

  • JSON의 데이터는 이름과 값으로 표현됩니다. 즉, JSON 데이터는 이름-값 쌍입니다.
  • 이름-값 쌍은 중괄호({ })로 묶입니다. JSON의 이름과 값은 콜론(:)으로 구분됩니다.
  • JSON의 배열은 각 배열 요소가 쉼표(,)로 구분되는 대괄호([ ]) 안에 포함됩니다.

JSON 구문:

|_+_|

JSON 예:

|_+_|

JSON을 사용하여 직원 정보를 저장했습니다. 사원정보는 사원의 이름, 아이디, 직위로 구성됩니다. 그러나 JSON에서 지원하는 두 가지 데이터 구조가 있습니다. 그것들은 다음과 같습니다:

하나. 정렬된 값 목록:

정렬된 값 목록에는 배열, 벡터, 목록, 시퀀스 등이 포함됩니다. 이러한 모든 데이터 구조는 값을 순차적으로 보유합니다.

둘. 이름-값 쌍의 컬렉션:

또 다른 JSON 데이터 구조에는 이름-값 쌍이 포함됩니다. 각 요소는 이름과 해당 값으로 표시됩니다.

JSON의 특징

JSON은 데이터를 잘 구조화되고 액세스하기 쉬운 형식으로 보유하는 텍스트 형식입니다. 다음은 알아야 할 가장 바람직한 JSON 기능입니다.

하나. 사용하기 쉬운:

JSON의 중요한 특징 중 하나는 매우 간단하고 사용하기 쉽다는 것입니다. JSON의 응용 프로그램 인터페이스는 높은 수준의 GUI , 사용자를 위해 일반적인 사용 사례를 더 단순화합니다.

둘. 성능:

JSON의 또 다른 주요 기능은 성능입니다. 훨씬 적은 메모리 공간이 필요하고 매우 빠르고 빠릅니다. 따라서 JSON은 대규모 개체 시스템에 가장 적합합니다.

삼. 언어 독립:

JSON은 JavaScript 스크립팅 언어에서 파생되지만 프로그래밍 언어와는 별개입니다. 여러 프로그래밍 언어와 함께 작동합니다. 예를 들어, 서버 측 프로그래밍 언어를 완전히 변경하려는 경우 JSON이 여러 언어에 대해 유사한 프로그래밍 구조를 가지므로 사용할 수 있습니다.

4. 표준 구조:

JSON은 표준 구조를 가지고 있습니다. 모든 JSON 개체는 표준 형식으로 작성되어 프로그래머가 코드에서 JSON 개체를 더 쉽게 사용할 수 있습니다.

5. 오픈 소스:

JSON은 JavaScript 스크립팅 언어를 기반으로 하는 오픈 소스 Google 라이브러리입니다. 코드에서 JSON 개체를 사용하면 해당 코드의 결과가 깨끗하고 읽기 쉽습니다. JSON 처리를 위해 다른 라이브러리가 필요하지 않습니다.

JSON은 언제 사용합니까?

JSON을 사용할 수 있는 몇 가지 상황이 있습니다. 이러한 상황은 다음과 같습니다.

  • JSON의 실용적인 용도 중 하나는 서버와 브라우저 간에 데이터를 전송하는 것입니다.
  • JSON의 또 다른 용도는 공개 데이터를 제공하는 것입니다. 여러 웹 서비스 및 애플리케이션 프로그램 인터페이스는 이러한 목적으로 JSON을 사용합니다.
  • JavaScript 애플리케이션용 브라우저 확장을 포함하는 코드를 작성할 때 JSON을 사용할 수 있습니다.
  • Google JSON을 활용하여 모든 네트워크를 통해 잘 구성된 데이터를 전송할 수 있습니다.
  • JSON은 프로그래밍 언어와 독립적이므로 여러 언어에서 사용할 수 있습니다.

JSON 데이터 유형

JSON 라이브러리에는 6가지 기본 데이터 유형이 있습니다. String, Number, Null, Boolean, Array 및 Object입니다. 각 JSON 데이터 유형을 예제와 함께 자세히 살펴보겠습니다.

하나. 끈:

JSON의 문자열은 0 또는 여러 개의 순차적 컬렉션을 의미합니다. 유니코드 문자. 각 유니코드 문자는 큰따옴표로 묶입니다. JSON에서 문자열을 이스케이프하려면 백슬래시()를 사용합니다. JSON에는 여러 문자열 유형이 있습니다. 아래에 설명과 함께 나열되어 있습니다.

JSON 문자열 유형 설명
비.B를 사용하여 백스페이스를 추가할 수 있습니다.
U는 4를 의미합니다 16진수 숫자.
NN String 유형을 사용하여 새 줄을 만들 수 있습니다.
/solidus에 대해 전면 슬래시(/)를 추가할 수 있습니다.
**는 큰따옴표에 사용됩니다.
는 /의 반대입니다. 역솔리더스에 사용됩니다.
아르 자형캐리지 리턴에 R 문자열 유형을 사용할 수 있습니다.
에프F는 양식 피드를 의미합니다.
T는 가로 탭을 표시하는 데 사용됩니다.

JSON 문자열 구문:

|_+_|

JSON 문자열 예:

|_+_|

둘. 숫자:

또 다른 JSON 데이터 유형은 숫자입니다. 여기에는 분수 부분, 지수 또는 단순히 부호 있는 정수가 포함될 수 있습니다. Number JSON 데이터 유형에는 , 16진수 및 8진수 형식. Number는 배정밀도의 부동 소수점 정수로 구성됩니다. 다음은 JSON 숫자 데이터 유형에서 지원하는 세 가지 형식입니다.

숫자 데이터 유형설명
정수정수에는 1-9 범위의 양수 및 음수가 포함됩니다. 0도 포함됩니다.
분수숫자 데이터 유형에는 3과 같은 분수도 포함됩니다.
멱지수숫자 데이터 유형에서 지수 e e+를 사용할 수 있습니다.

JSON 숫자 구문:

|_+_|

JSON 번호 예:

|_+_|

삼. 정렬:

우리는 배열에 대해 잘 알고 있습니다. 배열은 값의 모음입니다. 모든 값을 순서대로 저장합니다. JSON에서 배열 요소는 대괄호로 묶입니다. 각 배열 요소는 쉼표(',')로 구분됩니다. 키 값이 순차 정수인 경우 JSON 배열을 사용해야 합니다. JSON 배열 구문과 예를 살펴보겠습니다.

JSON 배열 구문:

|_+_|

JSON 배열 예:

|_+_|

4. 부울:

JSON Boolean 데이터 유형에는 True 및 False의 두 가지 출력 값이 있습니다. 다음은 JSON Boolean 데이터 유형의 구문 및 예입니다.

JSON 부울 구문:

|_+_|

JSON 부울 예:

|_+_|

5. 물체:

또 다른 JSON 데이터 유형은 객체입니다. Object 데이터 유형은 배열 데이터 유형과 반대입니다. 배열과 달리 객체는 정렬되지 않은 방식으로 값을 보유합니다. 모든 개체 요소와 값은 중괄호({ }) 안에 포함됩니다. 객체 데이터 유형의 각 요소는 쉼표(',')를 사용하여 구분됩니다. 개체 데이터 유형의 모든 키는 서로 다른 유형이어야 합니다.

JSON 객체 구문:

|_+_|

JSON 객체 예:

|_+_|

6. 없는:

Null은 비어 있음을 의미합니다.

JSON 널 구문:

|_+_|

JSON 널 예:

|_+_|

7. 공백:

공백은 두 개의 이름-값 쌍 또는 토큰 사이에 삽입할 수 있는 또 다른 JSON 데이터 유형입니다. Whitespace의 주요 응용 프로그램은 JSON 코드를 사람이 읽기 쉽게 만드는 것입니다. 다음은 JSON 코드에서 공백을 사용하는 구문과 예입니다.

JSON 공백 구문:

|_+_|

JSON 개체를 만드는 방법은 무엇입니까?

JSON 객체를 생성하는 것은 매우 간단하고 간단한 방법입니다. JSON 객체를 생성하기 위해 JavaScript 스크립팅 언어를 사용할 수 있습니다. JSON 객체는 여러 가지 방법으로 생성할 수 있습니다. JSON 객체를 만드는 다양한 형태를 알려주세요.

빈 JSON 개체를 만드는 방법은 무엇입니까?

아래 구문을 사용하여 빈 JSON 객체를 생성합니다.

|_+_|

여기서 'obj'는 빈 JSON 객체입니다.

새 JSON 개체를 만드는 방법은 무엇입니까?

아래 JSON 구문을 사용하여 새 객체를 생성합니다.

|_+_|

새로운 JSON 객체 'obj'가 생성됩니다.

이름과 값으로 JSON 객체를 생성하는 방법은 무엇입니까?

이름과 값이 있는 JSON 객체를 생성하기 위해 한 가지 예를 들어보겠습니다. name 속성을 'employee'로 가져오고 그 값을 String 데이터 유형으로 나타냅니다. 다른 이름 속성을 '나이'로 지정하고 숫자 데이터 유형에서 해당 값을 나타냅니다.

|_+_|

JSON과 XML의 차이점

게시물의 이 부분에서는 JSON과 XML의 주요 차이점을 살펴보겠습니다. 아래 표는 JSON과 XML의 근본적인 차이점을 보여줍니다.

JSONXML
JSON은 JavaScript Object Notation을 의미합니다. XML 확장 가능한 마크업 언어를 의미합니다.
JSON에는 String, Boolean, Number, Array 및 Null과 같은 여러 데이터 유형이 포함됩니다.XML에는 문자열 데이터 유형만 포함됩니다. 따라서 모든 XML 데이터는 String으로 표현됩니다.
전체 JSON 데이터는 사람이 쉽게 이해할 수 있습니다.XML 데이터는 사람이 쉽게 이해할 수 없습니다.
JSON은 마크업 언어가 아닙니다. 따라서 데이터를 표시할 수 없습니다.XML은 마크업 언어이며 데이터 표시 기능을 가지고 있습니다.
JSON은 네임스페이스를 허용하지 않습니다.XML은 네임스페이스를 허용합니다.
JSON에는 종료 태그가 없습니다.XML에는 시작 태그와 종료 태그가 모두 있습니다.
JSON에서는 코드에 주석을 작성할 수 없습니다.XML을 사용하면 XML 코드에 주석을 추가할 수 있습니다.
UTF-8 인코딩은 JSON에서 지원하는 유일한 인코딩 유형입니다.XML은 여러 인코딩 기술을 지원합니다.

위의 표는 JSON 및 XML에 대한 모든 의심을 해소했을 것입니다. 이제 예제를 사용하여 JSON과 XML이 어떻게 다른지 살펴보겠습니다.

JSON 예제

|_+_|

XML 예제

|_+_|

JSON.simple은 무엇입니까?

우리는 JSON이 무엇인지 정확히 보았습니다. 사람이 읽을 수 있는 형식으로 데이터를 유지하고 많은 프로그래밍 언어에서 사용할 수 있는 데이터 형식입니다. JSON 객체를 다음으로 전송하려는 경우 자바 , 어떻게 하시겠습니까? 다음은 JSON 개체 또는 데이터를 Java 코드와 공유하기 위한 라이브러리입니다. 이 라이브러리는 JSON.simple .

JSON.simple은 JSON 데이터가 Java로 읽고 쓸 수 있도록 하는 툴킷입니다. 즉, JSON.simple은 Java에서 JSON 객체를 인코딩 및 디코딩할 수 있는 라이브러리입니다. 라는 특별한 패키지가 있습니다. org.json.simple , 5개의 다른 JSON API 클래스를 보유합니다. 이 5가지 JSON API 클래스는 다음과 같습니다.

  1. JSON값
  2. JSON문자열
  3. JSON객체
  4. JSON번호
  5. JSONArray

JSON.simple을 위한 환경 설정

JSON.simple이 무엇이며 용도가 무엇인지 알고 있습니다. JSON.simple을 사용하는 방법? JSON.simple 툴킷은 JSON 데이터를 Java 언어로 인코딩 및 디코딩하는 데 사용됩니다. 따라서 JSON.simple 환경을 설정하기 위한 첫 번째 요구 사항은 자바 개발 키트(JDK) 컴퓨터 시스템에 설치됩니다.

시스템에 JDK를 설치하려면 버전 1.5 이상의 JDK를 설치해야 합니다. 시스템 메모리, 운영 체제 또는 디스크 공간과 같은 다른 추가 JDK 설치 요구 사항은 없습니다.

1단계: 시스템에서 Java 설치 확인:

많은 사용자가 시스템에 Java를 설치했을 수 있습니다. 이러한 경우 시스템에 Java가 설치되어 있는지 여부만 확인하면 됩니다. Java 설치를 확인하는 것은 매우 간단한 프로세스입니다. 명령 프롬프트에서 하나의 명령만 사용해야 합니다. 이 명령은 운영 체제 유형에 따라 다릅니다. Windows, macOS 및 리눅스 , 이 명령이 변경됩니다.

Java를 확인하는 명령을 보자. Windows에 설치 , Linux 및 macOS 시스템.

하나. 마이크로소프트 윈도우:

Windows 시스템에서 명령 프롬프트를 열고 다음을 입력합니다.

|_+_|

이 명령을 입력하고 Enter를 클릭하면 시스템의 Java 버전이 출력으로 생성됩니다. 출력은 다음과 같이 표시됩니다.

|_+_|

여기에 JDK 버전이 나타납니다.

둘. 리눅스:

Linux 시스템의 경우 명령 터미널을 열고 다음을 입력해야 합니다.

|_+_|

Linux 시스템의 출력은 Windows 시스템의 출력과 동일합니다. 위의 명령은

|_+_|

삼. 맥 OS X:

시스템 이름이 john이라고 가정하십시오. Mac OS X의 경우 시스템 터미널을 열고 다음을 작성하십시오.

|_+_|

Windows 및 Linux 시스템과 마찬가지로 Mac OS X은 위의 명령에 대해 동일한 출력을 생성합니다.

|_+_|

이것은 모두 우리 시스템에서 Java 설치를 확인하는 것이었습니다. 자바가 설치되어 있지 않다면? 이러한 상황에서는 Java를 설치하고 시스템 환경 변수의 경로를 JDK로 설정해야 합니다. 2단계에서 전체 Java 설치 프로세스를 볼 수 있습니다.

2단계: Java 설치 및 Java 환경 설정

컴퓨터 시스템에 Java가 없으면 여기에서 JavaSE를 다운로드해야 합니다. 웹사이트 ,

시스템과 호환되는 JavaSE를 다운로드했는지 확인해야 합니다. 버전 1.8.0_101에서 자바 환경을 설정하는 방법을 안내해 드립니다. JavaSE를 다운로드한 후 .exe 파일을 실행하여 설치합니다.

설치가 완료되면 Java 환경을 설정해야 합니다. Java 환경을 설정하려면 아래 단계를 따르십시오.

  • 여기서 JAVA_HOME 변수를 JDK가 설치된 위치로 수정해야 합니다.

C:Program FilesJavajdk에 JDK를 설치했다고 가정합니다.

  • Windows, Linux 및 macOS용 JAVA_HOME 환경 변수 설정은 다릅니다. 아래의 세 시스템 모두에 대한 Java 환경 설정을 보여주었습니다.
    • Windows 시스템의 경우 JAVA_HOME을 C:Program FilesJavajdk-18.0.1_101로 수정합니다.
    • Linux 시스템의 경우 JAVA_HOME 경로를 /usr/local/java-current로 변경합니다.
    • macOS의 경우 다음을 입력해야 합니다.
|_+_|
  • 나중에 시스템 경로에 Java 컴파일러의 위치를 ​​추가해야 합니다.
    • Windows 시스템의 경우 아래 단계를 따르십시오.

내 컴퓨터로 이동하여 마우스 오른쪽 버튼을 클릭합니다. 속성을 클릭하고 '고급 탭'으로 이동합니다. 나중에 환경 변수를 클릭합니다. '경로'를 선택하고 추가

C:Program FilesJavajdk-18.0.1_101in.

  • Linux 시스템의 경우 다음을 입력해야 합니다.
|_+_|
  • MAC OS X의 경우 시스템 경로를 변경할 필요가 없습니다.

3단계: JSON.simple 다운로드

이제 Java를 다운로드하고 환경 변수를 설정하는 방법을 알게 되었습니다. 다운로드 후 'java -version' 명령을 사용하여 Java 버전을 확인할 수도 있습니다. 다음 단계는 JSON.simple jar 파일을 다운로드하는 것입니다. 여기에서 JSON.simple jar 파일을 다운로드할 수 있습니다. 웹사이트 ,

최신 버전의 JSON.simple jar 파일을 다운로드했는지 확인해야 합니다. json-simple-1.1.1.jar 파일을 다운로드하여 C:>JSON 폴더에 복사합니다. 세 가지 시스템(Windows, Linux 및 macOS) 모두에서 jar 파일 이름은 json-simple-1.1.1.jar입니다.

4단계: JAVA_JSON용 환경 설정

JSON.simple jar 파일을 다운로드한 후 JAVA_JSON 환경을 설정해야 합니다. 시스템의 JSON 폴더에 json-simple-1.1.1.jar 파일이 저장되어 있다고 가정합니다. JSON.simple jar 파일을 보관할 위치에 JSON_JAVA 환경변수를 수정해야 합니다. 이 경우 JSON_JAVA 환경 변수를 JSON 폴더에 넣어야 합니다.

Windows, Linux 및 macOS 시스템에서 JSON_JAVA 환경 변수를 설정하는 방법을 살펴보겠습니다.

  • Windows 시스템의 경우 JSON_JAVA를 C:JSON으로 수정해야 합니다.
  • Mac OS X의 경우 다음을 입력해야 합니다.
|_+_|
  • Linux 시스템의 경우 아래 명령을 따라야 합니다.
|_+_|

5단계: CLASSPATH 변수 설정

JSON.simple 환경을 설정하는 마지막 단계는 CLASSPATH 변수를 설정하는 것입니다. CLASSPATH 환경 변수는 시스템에서 JSON.simple jar 파일의 위치로 변경됩니다. 다음 사항은 Windows, Mac OS X 및 Linux 시스템용 CLASSPATH 환경 변수를 선택하는 데 도움이 됩니다.

  • Windows 시스템의 경우 CLASSPATH 변수를 %CLASSPATH%;%JOSN_JAVA%json-simple-1.1.1.jar;.;
  • Linux 시스템의 경우 CLASSPATH 환경 변수를 설정하기 위해 아래 줄을 입력합니다.
|_+_|
  • Mac OS X의 경우 아래 줄을 사용합니다.
|_+_|

JSON.simple 환경 설정이 완료되었습니다.

JSON.simple의 기능

다음은 JSON.simple 기능을 보여줍니다.

  • JSON.simple은 JSON 사양 – RFC4627의 모든 규칙을 따릅니다. 즉, JSON 사양인 RFC4627을 완전히 준수합니다.
  • JSON.simple에서는 Map 또는 List 인터페이스를 사용하여 여러 작업을 수행합니다. 이렇게 하면 재사용 가능성이 높아집니다.
  • JSON.simple은 SAX와 유사한 콘텐츠 핸들러 또는 인터페이스를 제공합니다. 이 콘텐츠 핸들러는 방대한 JSON 데이터를 처리하는 데 사용됩니다.
  • JSON.simple은 거대한 클래스를 포함하지 않기 때문에 가벼운 툴킷입니다. JSON 데이터 인코딩, 이스케이프 및 디코딩에 필수적인 기능만 제공합니다.
  • JSON 단순 라이브러리를 사용하는 경우 다른 외부 라이브러리를 포함할 필요가 없습니다.
  • JSON.simple 라이브러리는 힙 기반 파서를 포함하므로 고성능을 제공합니다.

JSON.simple Java 매핑 및 특수 문자 이스케이프

여기에서는 JSON.simple과 Java 간의 매핑에 대해 설명합니다. 디코딩 또는 구문 분석이 필요한 경우 JSON.simple은 왼쪽에서 오른쪽으로 매핑을 수행합니다. 반대로 인코딩하는 동안 오른쪽에서 왼쪽으로 매핑을 제공합니다. 아래 표는 JSONsimple 및 Java 매핑을 보여줍니다.

JSON.simple 자바
없는없는
숫자java.lang.숫자
java.lang.String
물체java.util.Map
정렬java.util.목록
참|거짓java.lang.부울

디코딩할 때 org.json.simple.JSONArray는 java.util.List의 기본 구체 클래스입니다. java.util.Map의 경우 구체적인 클래스는 org.json.simple.JSONObject입니다.

이제 JSON.simple의 이스케이프 문자에 대해 논의하겠습니다. JSON에서 사용할 수 없는 7개의 특수 이스케이프 문자가 있습니다. 아래 7개의 이스케이프 문자는 모두 예약되어 있습니다.

  • 백스페이스 대신 가 사용됩니다.
  • \는 백슬래시에 사용됩니다.
  • f는 양식 피드 대신 사용됩니다.
  • 는 큰따옴표를 대체합니다.
  • 은 개행에 사용됩니다.
  • 은 캐리지 리턴을 대체합니다.
  • 는 탭을 대체합니다.

JSON.simple에서 위의 모든 예약 문자를 이스케이프하려면 JSONObject.escape() 메서드를 사용할 수 있습니다. JSONObject.escape() 메서드를 사용한 예를 살펴보겠습니다.

예시:

|_+_|

산출:

|_+_|

출력에서 JSONObject.escape() 메서드를 적용하기 전에 모든 특수 문자가 올바르게 작동했음을 알 수 있습니다. 새 줄에 '*'가 나타났습니다. JSONObject.escape() 메서드를 사용한 후 특수 문자가 작동하지 않았습니다.

Java에서 JSON 인코딩 및 디코딩

이 부분에서는 예제와 함께 Java에서 JSON 객체를 인코딩 및 디코딩하는 것을 볼 것입니다. JSON.simple 라이브러리는 Java에서 JSON 객체를 인코딩 및 디코딩하는 데 사용됩니다. 우리는 테이블과 함께 JSON.simple 및 Java 매핑을 보았습니다. JSON.simple은 JSON 객체를 왼쪽에서 오른쪽으로 디코딩하고 오른쪽에서 왼쪽으로 인코딩합니다.

자바에서 JSON 인코딩

Java에서 JSON 개체를 인코딩하기 위해 이 예제에서는 JSONObject를 사용합니다. JSONObject는 java.util.HashMap 패키지에 있습니다. 인코딩에 JSONObject를 사용하는 경우 요소 순서가 필요하지 않습니다. 요소 정렬의 경우 JSONValue.toJSONString을 사용할 수 있습니다. 아래 JSON.simple 인코딩의 예는 JSONObject를 사용합니다.

예시:

|_+_|

산출:

|_+_|

JSONObject를 사용했기 때문에 출력이 순서대로 발생하지 않았음을 관찰할 수 있습니다.

이제 Map 함수를 사용하여 Java에서 JSON 객체를 인코딩하는 또 다른 예를 살펴보겠습니다. Map() 함수에서 출력은 정렬된 형식으로 발생합니다. Map() 함수는 JSONValue.toJSONString을 사용합니다. 위의 동일한 예를 사용하지만 Map() 함수를 사용하겠습니다.

예시:

|_+_|

산출:

|_+_|

JSONValue.toJSONString을 사용하였으므로 위의 출력에서 ​​모든 요소가 순서대로 나타나는 것을 관찰할 수 있습니다. 이제 Java에서 JSON Array 인코딩을 볼 것입니다.

Java의 JSON 배열 인코딩

JSON 배열 인코딩에서 모든 요소는 하나의 단일 배열로 나타납니다. Java에서 JSON 배열 인코딩을 관찰하기 위해 위의 동일한 예를 살펴보겠습니다.

예시:

|_+_|

산출:

|_+_|

모든 JSON 요소는 위의 예에서 배열로 표시됩니다. 위의 예에는 Java의 간단한 JSON 배열 인코딩이 포함되었습니다.

List를 사용한 Java의 JSON 배열 인코딩

List 데이터 구조를 사용하여 JSON 배열을 인코딩할 수도 있습니다. ArrayList() 함수를 사용하여 가능합니다. 목록을 사용하여 JSON 배열을 인코딩하기 위해 위의 예에서 동일한 데이터를 가져옵니다.

예시:

|_+_|

산출:

|_+_|

자바에서 JSON 디코딩

Java에서 JSON 객체를 디코딩하는 동안 JSON.simple은 왼쪽에서 오른쪽으로 매핑을 수행합니다. 다음은 Java에서 JSON 객체 디코딩의 예입니다.

예시:

|_+_|

산출:

|_+_|

JSON.simple에서 두 개의 배열 병합

JSON.simple에서는 두 개의 다른 배열을 하나의 단일 배열로 결합할 수 있습니다. 두 배열을 고려하십시오. 두 배열을 병합한 후 결과 배열에는 첫 번째 및 두 번째 배열의 모든 요소가 포함됩니다. 두 배열을 병합하기 위해 JSON.simple에서 JSONArray.addAll() 메서드를 사용합니다.

예시:

|_+_|

산출:

|_+_|

결과 배열에는 l1 및 l2의 요소가 포함됩니다.

JSON.simple에서 두 객체 병합

우리는 두 개의 다른 어레이를 하나로 병합하는 것을 보았습니다. 유사하게, 우리는 두 개의 다른 객체를 하나로 연결할 수 있습니다. JSONObject.putAll() 메서드를 사용하여 두 객체를 하나로 결합합니다.

예시:

|_+_|

산출:

|_+_|

JSON.simple의 기본, 객체 및 배열

위의 예에서는 JSONArray만 사용했습니다. 여기서는 JSONArray 객체를 사용하는 방법을 살펴보겠습니다. JSONArray 객체를 사용하면 결과에 객체, 배열 및 프리미티브가 포함됩니다. 다음은 JSONsimple에서 기본, 객체 및 배열의 ​​예입니다.

예시:

|_+_|

산출:

|_+_|

따라서 위의 결과에는 기본 요소, 배열 및 개체가 포함됩니다.

JSON.simple의 Primitive, Map, List 조합

다음은 JSON.simple이 프리미티브, 목록 및 맵의 조합을 지원하는 방법을 이해하기 위한 또 다른 예입니다. 맵, 프리미티브 및 목록을 함께 결합하기 위해 JSONValue 객체를 사용합니다.

예시:

|_+_|

산출:

|_+_|

JSON.simple의 Primitive, List, Object 및 Map 조합

언급된 위의 두 가지 예에서 우리는 프리미티브, 배열, 객체 및 프리미티브, 목록, 맵의 조합을 보았습니다. 여기에서 우리는 이러한 모든 데이터 구조의 다양성을 하나로 볼 것입니다. 아래 예제에서는 JSONObject 및 JSONValue를 사용합니다.

예시:

|_+_|

산출:

|_+_|

JSON.simple의 사용자 정의 출력

JSON.simple을 사용하면 JSONAware 인터페이스를 사용하여 사용자 정의 출력을 얻을 수 있습니다. 사용자 정의 출력에 대한 정확한 아이디어를 얻기 위해 직원 이름과 직원 ID가 있는 직원의 한 예를 볼 것입니다.

예시:

|_+_|

산출:

|_+_|

우리는 JSON.simple을 사용하여 Java와 함께 JSON을 보았습니다. 이제 PHP에서 JSON을 살펴보겠습니다. 다음 섹션은 PHP로 JSON 객체를 인코딩 및 디코딩하는 데 도움이 될 것입니다.

PHP와 JSON

JavaScript와 마찬가지로 PHP도 스크립팅 언어입니다. 그만큼 PHP 스크립팅 언어 특히 웹 응용 프로그램 개발에 사용됩니다. PHP는 하이퍼텍스트 프로세서를 의미합니다. 이전에 PHP는 개인 홈 페이지로 알려졌습니다.

PHP에서 JSON을 사용하는 방법은 무엇입니까? PHP에서 JSON 객체를 인코딩 및 디코딩하는 방법은 무엇입니까? 다음은 PHP를 사용하여 JSON 객체를 인코딩 및 디코딩하는 방법을 설명하는 간단한 가이드입니다.

PHP에서 JSON 객체를 사용할 때 기억해야 할 첫 번째 단계는 PHP 환경을 설정하는 것입니다. JSON 확장은 이미 PHP 5.2.0으로 컴파일되었습니다. 따라서 JSON을 사용하기 위해 PHP 환경을 설정하는 데 필요한 추가 단계가 없습니다.

PHP의 JSON 함수

다음은 인코딩 및 디코딩을 위해 PHP에서 사용되는 몇 가지 중요한 JSON 함수입니다.

    json_encode:json_encode 함수에 값을 전달하면 해당 값의 JSON 형식이 반환됩니다.json_decode:이 함수는 JSON 문자열을 디코딩합니다.json_last_error:이름에서 알 수 있듯이 json_last_error 함수는 코드에서 마지막으로 발생한 오류를 반환합니다.

PHP에서 JSON 인코딩

위에서 json_encode() 함수를 보았습니다. 따라서 json_encode() 함수를 사용하여 PHP에서 JSON 객체를 인코딩합니다. 이 함수에 값을 전달하면 성공 시 해당 값의 JSON 표현을 결과로 생성합니다. 그렇지 않으면 FALSE를 생성합니다.

통사론:

|_+_|

여기서 값은 인코딩해야 하는 데이터를 나타냅니다. json_encode() 함수는 UTF-8로 인코딩된 데이터만 지원한다는 것을 기억하십시오. 위 함수의 두 번째 매개변수는 선택 사항입니다. JSON_PRETTY_PRINT, JSON_HEX_QUOT, JSON_HEX_TAG, JSON_FORCE_OBJECT, JSON_NUMERIC_CHECK, JSON_HEX_APOS 등과 같은 비트마스크를 포함합니다.

간단한 예를 들어 PHP에서 JSON 객체 인코딩을 이해합시다.

예시:

|_+_|

산출:

|_+_|

PHP에서 JSON 디코딩

PHP에서 JSON 객체를 디코딩하기 위해 json_decode() 함수를 사용합니다. JSON 개체에서 디코딩된 PHP의 값으로 출력을 생성합니다. 다음은 json_decode() 함수의 구문입니다.

통사론:

|_+_|

여기서 $json은 디코딩할 json_string입니다. 이 문자열은 UTF-8로 인코딩되어야 합니다. 또 다른 매개변수는 부울 유형인 assoc입니다. 깊이는 함수가 반복되어야 하는 횟수를 의미합니다. 마지막 매개변수는 옵션으로 비트마스크입니다.

PHP에서 JSON 객체를 디코딩하는 한 가지 예를 살펴보겠습니다.

예시:

|_+_|

산출:

|_+_|

이것은 모두 PHP에서 JSON 객체를 인코딩하고 디코딩하는 것이었습니다.

파이썬을 사용한 JSON

이 섹션은 JSON 객체를 인코딩 및 디코딩하는 데 도움이 됩니다. 파이썬 . Python은 인기 있는 고급 프로그래밍 언어 중 하나입니다. Python에서 JSON 인코딩 또는 디코딩을 시작하기 전에 먼저 Python 환경을 설정해야 합니다.

Python에서 JSON을 사용하는 첫 번째 단계는 JSON 모듈을 다운로드하는 것입니다. 예를 들어 Demjson을 JSON 모듈로 선택한 경우 아래 명령을 따르세요.

|_+_|

'마샬' 및 '피클'과 같은 여러 다른 JSON 모듈이 있습니다. Python과 함께 JSON을 사용하기 위한 두 가지 함수, 인코딩 및 디코딩이 있습니다. encode 함수는 Python 객체를 JSON으로 인코딩합니다. 결과는 JSON 문자열 형식으로 표시됩니다. 반면, 디코드 함수는 JSON 문자열을 Python 객체로 디코딩합니다.

Python에서 JSON 인코딩

우리는 encode() 함수를 사용하여 Python 객체를 JSON 문자열로 변환합니다. 다음은 Python에서 JSON을 인코딩하는 구문과 예입니다.

통사론:

|_+_|

예시:

|_+_|

산출:

|_+_|

Python에서 JSON 디코딩

Python에서 JSON을 디코딩하기 위해 디코딩() 함수를 사용합니다. Decode() 함수의 결과는 JSON 문자열에서 Python 객체를 반환합니다. Decode() 함수의 구문과 예를 살펴보겠습니다.

통사론:

|_+_|

예시:

|_+_|

산출:

|_+_|

이것은 모두 Python에서 JSON 객체를 인코딩하고 디코딩하는 것이었습니다. Ruby 및 Perl 프로그래밍 언어와 함께 JSON을 사용할 수도 있습니다. Ruby 및 Perl 프로그래밍 언어의 경우 먼저 환경을 설정한 다음 JSON으로 인코딩 및 디코딩을 수행해야 합니다.

JSON의 이점

JSON(JavaScript Object Notation)의 기능과 응용 프로그램을 살펴보았습니다. 다른 환경에서 데이터를 교환한다는 점에서 XML과 유사합니다. 다음은 JSON의 몇 가지 중요한 이점입니다.

  • JSON의 가장 바람직한 이점 중 하나는 Python, Ruby, Perl, PHP, JavaScript 등과 같은 많은 프로그래밍 언어와 잘 작동한다는 것입니다. 이 기사에서 Java, Python 및 PHP에서 JSON 객체의 인코딩 및 디코딩 예제를 보았습니다. .
  • JSON은 사람이 쉽게 이해할 수 있는 간단한 텍스트 형식으로 데이터를 보유합니다. 가장 일반적인 텍스트 편집기를 지원합니다.
  • JSON 데이터는 XML보다 훨씬 적은 공간을 차지합니다. 단일 JSON 문자열은 XML 문자열보다 2/3가 적습니다.

결론

JSON(JavaScript Object Notation)은 사람이 쉽게 이해할 수 있는 텍스트 형식으로 데이터를 보유합니다. JSON의 데이터는 속성-값 쌍 또는 배열 데이터 구조로 표현됩니다. 이 게시물은 JSON에 대한 빠르고 완전한 가이드입니다. 우리는 JSON, 그 기능 및 JSON을 사용하는 위치를 보았습니다. JSON 데이터 유형에는 Number, String, Array, Boolean, Null 및 Object의 6가지 유형이 있습니다. 이러한 각 JSON 데이터 유형은 예제와 해당 구문으로 설명됩니다.

당신은 다양한 형태의 JSON 객체 생성에 대해 잘 알고 있습니다. JSON.simple은 Java에서 JSON 객체를 인코딩 및 디코딩하는 데 사용됩니다. 이 게시물을 진행하면 Windows, macOS 및 Linux 시스템에서 JSON Java 환경을 설정하는 방법을 이해할 수 있습니다. 이후 섹션에서 우리는 몇 가지 JSON 예제를 설명했습니다. 예제를 통해 Java에서 JSON 개체 인코딩 및 Java에서 JSON 배열 인코딩을 보았습니다. Java에서 JSON 객체의 디코딩을 관찰할 수도 있습니다.

다음으로, 우리는 두 개의 배열을 병합하고 두 개의 객체를 결합하는 여러 가지 예, 프리미티브의 조합, 객체, 배열, 프리미티브의 조합, 맵, 리스트 및 프리미티브의 조합, 리스트, 맵, 객체에 대해 언급했습니다. 마지막으로 사용자 정의 출력의 예에 대해 논의했습니다.

다음 섹션에서는 Python 및 PHP를 사용하여 JSON에 대해 논의했습니다. JSON용 PHP 및 Python 환경을 설정하는 방법을 살펴보았습니다. 나중에 우리는 예제와 함께 PHP와 Python에서 JSON 객체를 인코딩 및 디코딩하는 것을 보았습니다.