html์ ํ์ฑํด์ ์ธ๋ค์ผ ์ด๋ฏธ์ง๋ฅผ ์ถ์ถํด Amazon S3์ ์ ์ฅํด์ผ ํ๋ ์ผ์ด ์์์ต๋๋ค.์ฌ์ด๋ ํ๋ก์ ํธ ์ธ ๋งํผ ์ด๋ฏธ์ง ์ฉ๋์ ์ค์ผ ์ ์์ผ๋ฉด S3 ๋น์ฉ๋ ์๋ผ๊ณ ํ๋ก ํธ ๋ ๋๋ง ์๋ ์ญ์ ๊ฐ์ ๋๊ฒ ๋ค๊ณ ์๊ฐ์ด ๋ค์๊ณ resize์ webp ์ด๋ฏธ์ง ํฌ๋งท์ ์ฌ์ฉํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.์ด๋ฏธ์ง ์ฝ๊ธฐURL ์ ๋ณด๋ฅผ ํตํด์ ์ด๋ฏธ์ง๋ฅผ ์ฝ์ด์์ผ ํ์๋๋ฐ Java์์ javax.imageio.ImageIO ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ๊ฒ ์ด๋ฏธ์ง๋ฅผ ์ฝ๊ณ ์ธ ์ ์์์ต๋๋ค.URL ํน์ ํ์ผ์ ์ฝ์ด์ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.BufferedImage image = ImageIO.read(new URL(์ด๋ฏธ์ง ์ฃผ์));BufferedImage image = ImageIO.read(new File(์ด๋ฏธ์ง ์ ์ฅ ์์น));java.awt.image...
์ ์ฒด ๊ธ
๋ด์์์ ๋ด์ค๋ ํฐ์ด๋ฒ์ JPA๋ฅผ ํตํด์ ์ธ๋ถ DB์์ ๋ฐ์ดํฐ๋ฅผ Read/Write๋ฅผ ์ํํ์ง๋ง Spring Batch์ ๋ฉํ ํ
์ด๋ธ์ ๋ถ๋ฆฌํ๊ณ ์ถ์์ต๋๋ค.Spring batch 5.0์์ @EnableBatchProcessing์ ์๋ก์ด ์์ฑ์ด ์๊ฒจ ์ฝ๊ฒ ๊ตฌํํ ์ ์์ ์ค ์์์ต๋๋ค. https://spring.io/blog/2022/09/22/spring-batch-5-0-0-m6-and-4-3-7-are-out#new-configuration-class-for-infrastructure-beansSpring Batch๊ฐ ๊ตฌ์ฑํด์ผ ํ๋ dataSource ๋ฐ transactionManager๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค.โ๏ธ ์ฃผ์์ SpringBoot 3.0๋ถํฐ @EnableBatchProcessing ํน์ DefaultBa..
์ฌ์ฉ์์ ๋ฉ์ผํจ์์ ๋ด์ค๋ ํฐ๊ฐ ์ ์กํ ๋ฉ์ผ์ ์ฌ๋ฌ๊ฐ๋ฅผ JpaItemWriter๋ฅผ ํตํด์ Insert ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ๋ ค๊ณ ํฉ๋๋คํ์ง๋ง ๋ฐฐ์น๋ฅผ ๋๋ ค๋ณด๋ "Class 'class java.util.ArrayList' is not an entity class" ์์ธ๊ฐ ๋ฐ์ํ์ต๋๋ค. Stack trace๋ฅผ ํ์ธํด๋ณด๋ JpaItemWriter์์ write๋ฉ์๋๊ฐ ์ํ๋๋๋ฐ ๋ฐ์์จ ๊ฐ์ฒด๊ฐ Entity๊ฐ ์๋๋ผ List.class๋ผ์ ๋ฐ์ํ ๋ฌธ์ ์์ต๋๋ค.doWrite๋ฅผ ํธ์ถํ๋ฉด์ SessionImpl ํด๋์ค์์ persist๋ฅผ ํ๊ธฐ์ ์ ์ฒดํฌํ๋ ๋ฉ์๋๋ค์ด ํธ์ถ๋ ๋ ArrayList๋ Entity๊ฐ ์๋๋ผ์ ์์ธ๊ฐ ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค.SessionImpl ํด๋์ค์ contains ๋ฉ์๋์ฆ write ๋ฉ์๋์ T๊ฐ Artic..