Gson ์€ ์™œ ๋ฉ‹๋Œ€๋กœ null ๊ฐ’์„ ๊ฐ€์ง„ ํ•„๋“œ๋ฅผ ์ œ์™ธํ•˜๋‚˜?

2023. 7. 13. 13:52ยท ์—๋Ÿฌ๋ชจ์Œ
๋ชฉ์ฐจ
  1. 1. ๋ฐ์ดํ„ฐ ์šฉ๋Ÿ‰ ๋ฐ ์ „์†ก ํšจ์œจ์„ฑ
  2. 2. ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ๊ณผ ์˜๋„

json ์œผ๋กœ ๊ฐ’์„ ๋ฐ›์œผ๋ฉด ํ‚ค์™€ ๊ฐ’ ์„ ๋งคํ•‘ํ•ด์„œ ์ด๋ฉ”์ผ์„ ์ „์†กํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ

ํ‚ค๋ฅผ ๊ณ„์† ๋ชป์ฐพ๋Š”๊ฒŒ ์ด์ƒํ•ด์„œ ํ™•์ธํ•ด๋ณด๋‹ˆ null ๊ฐ’์„ ๊ฐ€์ง„ ํ•„๋“œ๋Š” ์ œ์™ธํ•˜๊ณ  ์ง๋ ฌํ™”๋ฅผ ํ•˜๊ณ  ์žˆ์—ˆ๋‹ค.

https://github.com/google/gson/blob/main/UserGuide.md#null-object-support

๊ธฐ๋ณธ์ ์œผ๋กœ Gson ์€ null ๊ฐ’์„ ๊ฐ€์ง„ ํ•„๋“œ๋ฅผ ์ œ์™ธํ•˜๊ณ  ์ง๋ ฌํ™” ํ•˜๊ณ  ์žˆ์–ด์„œ,,

serializeNulls() ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ null ๊ฐ’์„ ํฌํ•จํ•˜๋Š” Gson ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•œ๋‹ค.

 Gson gson = new GsonBuilder().serializeNulls().create();
 String json = gson.toJson(exampleObject);

 

์™œ ๊ธฐ๋ณธ๊ฐ’์ด null ๊ฐ’์„ ์ œ์™ธ ํ•˜๋Š”๊ฒƒ์ผ๊นŒ?

1. ๋ฐ์ดํ„ฐ ์šฉ๋Ÿ‰ ๋ฐ ์ „์†ก ํšจ์œจ์„ฑ

Json์€ ๋ฐ์ดํ„ฐ ๊ตํ™˜ ํ˜•์‹์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š”๋ฐ, null ๊ฐ’๋„ ์–ด๋–ป๊ฒŒ ๋ณด๋ฉด ์ถ”๊ฐ€์ ์ธ ์šฉ๋Ÿ‰์ด๊ธฐ ๋•Œ๋ฌธ์— Json ์˜ ํฌ๊ธฐ๋ฅผ ์ค„์—ฌ ํšจ์œจ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚จ๋‹ค. ํŠนํžˆ ๋Œ€๋Ÿ‰์˜ Json์ผ ๊ฒฝ์šฐ ์ „์†ก ์‹œ๊ฐ„๊ณผ ๋Œ€์—ญํญ์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ๋‹ค.

2. ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ๊ณผ ์˜๋„

null ์ด๋ผ๋Š”๊ฑด ๊ฐ’์ด ์กด์žฌํ•˜์ง€ ์•Š์Œ์„ ๋‚˜ํƒ€๋‚ด๋Š”๋ฐ ๋ช…ํ™•ํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•จ์ด๋ผ๊ณ  ํ•œ๋‹ค.

์ด๊ฑฐ๋Š” ์ข€ ์ดํ•ด๊ฐ€ ์•ˆ๋˜๋Š”๋ฐ... ์–ด๋–ค ํ‚ค๊ฐ’์˜ ๊ฐ’์ด ์กด์žฌํ•˜๋Š”์ง€, ์•ˆํ•˜๋Š”์ง€๋Š” ํ™•์ธํ•ด์•ผ ํ•˜์ง€ ์•Š์„๊นŒ ์ƒ๊ฐ์ด ๋“ ๋‹ค

 

 

 

 

ํ˜น์‹œ ์ด๊ฒƒ์€ ๋‹น์—ฐํ•œ๊ฒƒ์ด๊ณ  ๋ชจ๋‘๊ฐ€ ์•Œ๊ณ  ์žˆ์—ˆ๋‚˜ .......?

์ด๊ฒƒ๋•Œ๋ฌธ์— ์‹œ๊ฐ„์„ ์ข€ ์จ์„œ ๋นก์น˜์ง€๋งŒ ๋ฐฐ์›Œ๊ฐ‘๋‹ˆ๋‹ค...

๋ฐ˜์‘ํ˜•
์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'์—๋Ÿฌ๋ชจ์Œ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

No property found for type ! (Querydsl)  (0) 2022.12.12
Eclipse rejected-non-fast-forward ์˜ค๋ฅ˜  (0) 2020.04.15
Tomcat error) java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens  (0) 2020.04.11
  1. 1. ๋ฐ์ดํ„ฐ ์šฉ๋Ÿ‰ ๋ฐ ์ „์†ก ํšจ์œจ์„ฑ
  2. 2. ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ๊ณผ ์˜๋„
'์—๋Ÿฌ๋ชจ์Œ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • No property found for type ! (Querydsl)
  • Eclipse rejected-non-fast-forward ์˜ค๋ฅ˜
  • Tomcat error) java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens
์• ์ •์“ฐ
์• ์ •์“ฐ
์• ์ •์“ฐ
์• ์ •์ฝ”๋”ฉ ๐Ÿ’ป
์• ์ •์“ฐ
์ „์ฒด
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (93)
    • ๐Ÿง  MIND (0)
    • ๐Ÿ“ ํšŒ๊ณ  (5)
    • โš™๏ธ ๋ฐฐํฌ ๋ฐ ์ธํ”„๋ผ (2)
    • ๐Ÿ—‚๏ธ DataBase (1)
      • QUERY (1)
    • ๐Ÿ’ป Computer Science (12)
    • ๐ŸŒ WEB (62)
      • HTML,CSS (0)
      • Kotlien (1)
      • JAVA (20)
      • JavaScript (3)
      • Spring (16)
      • Thymeleaf (2)
      • Node.js (1)
      • React (2)
      • SETTING (3)
      • JPA (11)
    • ๐Ÿœ TESTING (3)
    • ๊ธฐํƒ€ (4)
    • ์—๋Ÿฌ๋ชจ์Œ (4)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ์ธํ„ฐ๋ทฐ
  • ๋™์ ํ”„๋ก์‹œ
  • rdsํŒŒ๋ผ๋ฏธํ„ฐ
  • Spring
  • max_digest_length
  • ํšŒ๊ณ 
  • Java
  • ์„œ๋น„์Šคํ…Œ์ŠคํŠธ
  • ๊ฐœ๋ฐœ์žํšŒ๊ณ 
  • ์ฝ”ํ…Œ
  • ๋ฐฑ์ค€
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • 6์›”ํšŒ๊ณ 
  • ๊ธฐ์ดˆ
  • ๋ฉ”์„œ๋“œํ…Œ์ŠคํŠธ
  • JPA
  • ํŒŒ์ด์ฌ
  • null์ œ์™ธ
  • Gson null
  • JWT
  • ์ง๋ ฌํ™”
  • spring-boot
  • enum
  • ์ž๋ฐ”
  • QueryDSL
  • Setting
  • ArgumentCaptor
  • Til
  • XSSFWorkbook
  • ๊ฐœ๋ฐœ์ž

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

hELLO ยท Designed By ์ •์ƒ์šฐ.v4.2.1
์• ์ •์“ฐ
Gson ์€ ์™œ ๋ฉ‹๋Œ€๋กœ null ๊ฐ’์„ ๊ฐ€์ง„ ํ•„๋“œ๋ฅผ ์ œ์™ธํ•˜๋‚˜?
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.