1. ์ค๋ฅ ์ํฉ
retrofit์์ localDateTime ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋ ์ค ๋ค์๊ณผ ๊ฐ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์๋ค.
์์ ์ค๋ฅ๋ LocalDateTime parsing์์ ๋ฌธ์ ๊ฐ ์๊ฒจ์ ๋ฐ์ํ๋ ์ค๋ฅ์ด๋ค.
์ด ์ค๋ฅ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ํ์๋ ๊ฒ์์ ๊ธฐ๋ฐ์ผ๋ก gson์ ๊ธฐ์กด์ localDatetime์ parsing ํ๋ ์์ ์ ์ฝ๋๋ฅผ ์ถ๊ฐํ์๋ค.
val gson = GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ss")
.create()
return GsonConverterFactory.create(gson)
์์ ๋ฐฉ๋ฒ์ ๋์๊ฒ ์ฌ๋ฐ๋ฅธ ๋ฐฉ๋ฒ์ด ์๋์๋ค.
๊ทธ๋ฌ๋ ๋๋ ํ ๋ธ๋ก๊ทธ์์ ๋ฐฉ๋ฒ์ ์ฐพ์ ์ ์์๋ค.
https://lemontia.tistory.com/997
์ด ๋ธ๋ก๊ทธ์์๋ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ String์ ์ด์ฉํด ๋ฐ์์ค๋ ๋ฐฉ๋ฒ๊ณผ
LocalDateTime์ Type์ ์ ์งํ๋ฉด์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ ๋ชจ๋๋ฅผ ์๋ ค์ฃผ์๋ค.
์ผ๋จ ๋๋ ์ ์์ ๋ฐฉ๋ฒ์ ํํด์ ์ด ์ค๋ฅ๋ฅผ ํด๊ฒฐํ์๋ค.
data class RentalInfoResponse(
val rentalStartDate: String,
val rentalEndDate: String
)
๊ธฐ์กด์ LocalDateTime์ผ๋ก ์ค์ ๋์ด ์๋ ๋ถ๋ถ์ String์ผ๋ก ๋ฐ๊พธ์ด์ ํด๊ฒฐํ์๋ค.
LocalDateTime์ ๋ฐ์ดํฐ ํ์์ ์ ์งํ๋ฉด์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๊ณ ์ถ์ผ๋ฉด ์์ ๋งํฌ๋ฅผ ๋ค์ด๊ฐ์ ์ ์ฉํด ๋ณด๋ ๊ฒ๋ ๋์์ง ์์ ๊ฒ ๊ฐ๋ค.