๊ณตํต์ String์ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ํด๋์ค์ฐจ์ด์ - ๋ถ๋ณ : String- ๊ฐ๋ณ : StringBuffer, StringBuilder String๋ฌธ์์ด์ ํ ๋ฒ ์์ฑ๋๋ฉด ๋ฉ๋ชจ๋ฆฌ ๋ด๋ถ์์ ๋ณ๊ฒฝ ๋ถ๊ฐ๋ณ๊ฒฝ๋์ง ์๋ ๋ฌธ์์ด์ ์ฒ๋ฆฌํ ๋ ์ฌ์ฉํจ StringBuffer (๋ฉํฐ์ค๋ ๋ ํ๊ฒฝ)๋ด๋ถ์ ์ผ๋ก ๋ฐฐ์ด์ ์ฌ์ฉํ์ฌ ๋ฌธ์์ด์ ์ ์ฅํ๊ณ , ๋ฌธ์์ด์ ๋ณ๊ฒฝํ ๋๋ง๋ค ์๋ก์ด ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ ๋์ ๊ธฐ์กด ๊ฐ์ฒด์ ๊ฐ์ ์์ ํจ -> ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ ๋ฉํฐ์ค๋ ๋ฉ ํ๊ฒฝ์์ ์ฌ๋ฌ ์ค๋ ๋๊ฐ ๋์์ ์ ๊ทผํ๋๋ผ๋ ๋ฌธ์ ๋ฐ์ X -> ์ค๋ ๋ ์์ (thread-safe) StringBuilder (๋จ์ผ์ค๋ ๋ ํ๊ฒฝ)StringBuffer์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋ฌธ์์ด ์์ ๋ฉํฐ์ค๋ ๋ฉ ํ๊ฒฝ์์ ์ค๋ ๋ ์์ ์ ๋ณด์ฅํ์ง ์์๋ฉํฐ์ค๋ ๋ฉ์ด ํ์์๋ ์ํฉ์์๋ ..
๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
ํ๋ก์์ ์๋ฌ ํ์ธํ ๋SELECT LINE, POSITION, TEXTFROM USER_ERRORSWHERE NAME = 'ํ๋ก์์ ๋ช
' AND TYPE = 'PROCEDURE';
์คํ๋ง ์บ์(Spring Cache)์์ฃผ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๋ฅผ ์บ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํ์ฌ ๋น ๋ฅธ ๊ฒ์์ ๊ฐ๋ฅํ๊ฒ ํจ build.gradleimplementation 'org.springframework.boot:spring-boot-starter-cache Spring Boot Cache ์ด๋
ธํ
์ด์
@EnableCachingSpring Boot Cache๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ‘์บ์ ํ์ฑํ’๋ฅผ ์ํ ์ด๋
ธํ
์ด์
์ ์๋ฏธํ๋ค@CacheConfig์บ์์ ๋ณด๋ฅผ ‘ํด๋์ค ๋จ์’๋ก ์ฌ์ฉํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ์ด๋
ธํ
์ด์
์ ์๋ฏธํ๋ค@Cacheable์บ์์ ๋ณด๋ฅผ ๋ฉ๋ชจ๋ฆฌ ์์ ‘์ ์ฅ’ํ๊ฑฐ๋ ‘์กฐํ’ํด์ค๋ ๊ธฐ๋ฅ์ ์ํํ๋ ์ด๋
ธํ
์ด์
์ด๋ค@CachePut์บ์ ์ ๋ณด๋ฅผ ๋ฉ๋ชจ๋ฆฌ์์ ‘์ ์ฅ’ํ๋ฉฐ ์กด์ฌ ์ ๊ฐฑ์ ํ๋ ๊ธฐ๋ฅ์ ์ํํ๋ ์ด๋
ธํ
์ด์
์ด๋ค@CacheEv..
"ํ์ง๋ ์์ฌ์ค๋ฌ์ด ์์ ๊ถ" ๊ฒฝ๊ณ ๋ ์ผ๋ฐ์ ์ผ๋ก Git์ด ์ ์ฅ์์ ์์ ๊ถ๊ณผ ์ฌ์ฉ์ ๊ถํ ๊ฐ์ ๋ถ์ผ์น๋ฅผ ๊ฐ์งํ์์ ์๋ฏธGit์๊ฒ ํด๋น ์ ์ฅ์๋ฅผ ์ ๋ขฐํ๋๋ก ์ค์ ํ๋ฉด ๋จ cmd์์ git config --global --add safe.directory '๊ฒฝ๋ก'
ctrl + alt + s์๋ํฐ -> ํ์ผ ์ธ์ฝ๋ฉ -> ํ๋กํผํฐ ํ์ผ์ ๋ํ ๋ํดํธ ์ธ์ฝ๋ฉ์ UTF-8 ๋ก ์ ํ๋ช
ํํ native์์ ASCII๋ก์ ๋ณํ ์ฒดํฌ ํ ์ ์ฉ

sftp๋ก ํ์ผ์ ์ฎ๊ฒจ์ผ ํ๋๋ฐ ํด๋ ๊ถํ์ด root๋ผ์ permission denied๊ฐ ๋ด๋ค์ ์ ๋ฅผ root๋ก ๋ฐ๊ฟ๋ด
์๋ค 1. winscp ์์ pubic ip์ฃผ์์ ํฌํธ๋ฒํธ, ์ ์ ์ ๋ณด๋ฅผ ์
๋ ฅํจ๊ทธ๋ฆฌ๊ณ "๊ณ ๊ธ" ๋ฒํผ์ ๋๋ฅธ๋ค 2. "ํ๊ฒฝ" / "์"๋ก ๋ค์ด๊ฐ์ sudo su - ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํจsudo su -ํ์ฌ ์ฌ์ฉ์์์ ๋ฃจํธ ์ฌ์ฉ์๋ก ์ ํํ๊ณ , ๋ฃจํธ ์ฌ์ฉ์์ ํ๊ฒฝ์ ๋ชจ๋ ์ ์ฉํ ์ํ๋ก ๋ก๊ทธ์ธ 3. "SSH" / "์ธ์ฆ" ์ผ๋ก ๋ค์ด๊ฐ์ ๊ฐ์ธํค๋ฅผ ์ง์ ํด์ค 4. ํ์ผ ํ๋กํ ์ฝ์ "SFTP" ์์ "SCP"๋ก ๋ณ๊ฒฝ ๋ก๊ทธ์ธ ํ๋ฉด ๋