๋ฐ์ํ
Spring Boot ํ๋ก์ ํธ๋ฅผ ํ๋ค ๋ณด๋ฉด ๋ ์ง/์๊ฐ ์ฒ๋ฆฌ๋ฅผ ํ๋ก ํธ(JS)์ ๋ฐฑ์๋(Java) ์์ชฝ์์ ๊ฐ๊ฐ ์ฒ๋ฆฌํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
"์ด๋ผ? ํ์ชฝ์์ ์ฒ๋ฆฌํ๋ฉด ๋๋ ๊ฑฐ ์๋?" ์ถ์ง๋ง, ์ฌ์ค์ ๊ฐ์์ ์ญํ ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ ๋ค ํ์ํ ๊ฒ.
์๋์์ ์ค์ ์ฝ๋๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฐ๊ฐ ์ด๋ค ์ญํ ์ ํ๋์ง ์ ๋ฆฌํด๋ณด์.
1. ๋ฐฑ์๋์์ ์๊ฐ ํฌ๋งท ์ฒ๋ฆฌ (Controller)
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime startDateTime = LocalDateTime.parse(startDate, formatter);
- ํ๋ก ํธ์์ ๋๊ฒจ์ค ๋ฌธ์์ด(String)์ LocalDateTime ๊ฐ์ฒด๋ก ๋ณํํ๊ธฐ ์ํด ์ฌ์ฉ
- ์: "2025-05-12 00:00:00" → LocalDateTime ๊ฐ์ฒด
- @RequestParam์ผ๋ก ๋ฐ์ ๋ ์ง๊ฐ ๋น์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ ๋ ์ง ๋ฒ์ ์ค์ ๋ ํจ๊ป ์ฒ๋ฆฌ
๋ฌธ์์ด → LocalDateTime ํ์ฑ + ๊ธฐ๋ณธ๊ฐ ์ฒ๋ฆฌ
2. ํ๋ก ํธ์๋(js)์์์ ์๊ฐ ํฌ๋งท ์ฒ๋ฆฌ
function formatDate(dateStr) {
const date = new Date(dateStr);
date.setHours(date.getHours() + 9); // KST ๋ณด์
return date.toISOString().replace('T', ' ').substring(0, 19);
}
- Date ๊ฐ์ฒด๋ ๊ธฐ๋ณธ์ ์ผ๋ก UTC ๊ธฐ์ค → ํ๊ตญ์๊ฐ(KST)์ผ๋ก ๋ง์ถฐ์ค์ผ ํจ
- .toISOString()์ T ํฌํจ๋ ํฌ๋งท์ด๋ผ ์ฌ์ฉ์ ์ ์ฅ์์ ๋ณด๊ธฐ ์ด๋ ค์
- ๊ทธ๋์ KST ๋ณด์ + "yyyy-MM-dd HH:mm:ss" ํ์์ผ๋ก ๋ณด๊ธฐ ์ข๊ฒ ๋ฐ๊ฟ
UTC → KST ๋ณํ + ์์๊ฒ ํฌ๋งทํด์ UI์ ํ์
| ๋ฐฑ์๋ (Spring Boot Controller) | ๋ ์ง ๋ฌธ์์ด์ LocalDateTime์ผ๋ก ๋ณํ + ๋น์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ ๋ ์ง ์ค์ |
| ํ๋ก ํธ์๋ (JS) | UTC → KST ๋ณด์ + ์ฌ์ฉ์์๊ฒ ๋ณด๊ธฐ ์ข์ ํํ๋ก ํฌ๋งท |
๋ฐฑ์๋๋ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ํฌ๋งทํ๊ณ ,
ํ๋ก ํธ๋ ์ฌ๋ ๋์ ๋ณด๊ธฐ ์ข๊ฒ ๋ณด์ฌ์ฃผ๋ ค๊ณ ํฌ๋งทํ๋ค.
๋ฐ์ํ
'๐๏ธ ๋ฐฑ์๋ > ๐Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| # JPA ๋ฉ์๋, ์กฐ๊ฑด์ฐ์ฐ ํค์๋ ์ ๋ฆฌ (0) | 2025.05.19 |
|---|---|
| # QueryDSL ์กฐ๊ฑด์ ํจ์ ์ ๋ฆฌ (0) | 2025.05.19 |
| # JSP - iframe ์ธ๋ถ(๋ถ๋ชจ)์ ๋ณ์ ๋๊ธฐ๊ธฐ (0) | 2025.03.25 |
| # @ConfigurationPropertiesScan, @ConfigurationProperties (0) | 2025.03.06 |
| # ์ฐจํธ๊ฐ ๋ง์๋ ์๋ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ (0) | 2025.02.26 |