์ธ๋„ค์ผ Dto ์‚ฌ์šฉ์— ๊ด€ํ•œ ์ƒ๊ฐ 1. ์„œ๋ก  ํšŒ์‚ฌ์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋‹ค๋ณด๋ฉด ๊ณ„์ธต ๊ฐ„ ๋ฐ์ดํ„ฐ ๊ตํ™˜์„ ์œ„ํ•ด ๊ธฐ๋ณธ์ ์œผ๋กœ DTO๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค. ํšŒ์‚ฌ์—์„œ๋Š” ๋ณดํ†ต ๋ฏธ๋ฆฌ ์ •์˜๋œ ํŽธ์˜์„ฑ์„ ๊ฐ–์ถ˜ DTO๋ฅผ ์ •์˜ํ•ด ์‚ฌ์šฉํ•œ๋‹ค. ๋‹ค๋งŒ, ์ผ๋ถ€ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ํ”„๋ฆฌ๋žœ์„œ๊ฐ€ ์ฐธ์—ฌํ•˜์—ฌ ํ•ด๋‹น ํ”„๋ฆฌ๋žœ์„œ๊ฐ€ ์ œ๋กœ ๋ฒ ์ด์Šค๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ๋‹จ๊ธฐ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งˆ๋ฌด๋ฆฌํ•˜๊ณ , ์ดํ›„ ์ •์ง์›์ด ์ด์–ด๋ฐ›์•„ ์œ ์ง€๋ณด์ˆ˜๋ฅผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด ๋•Œ, ์ฝ”๋“œ๋ฅผ ์‚ดํŽด๋ณด๋ฉด ๋Œ€๋ถ€๋ถ„ DTO๋กœ getter/setter๊ฐ€ ์ •์˜๋œ DTO๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํ•˜์ง€๋งŒ, ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์ง„ํ–‰ํ•˜๋‹ค๋ณด๋ฉด ์š”๊ตฌ์‚ฌํ•ญ์€ ํ•ญ์ƒ ๋ฐ”๋€Œ๊ธฐ ๋งˆ๋ จ์ด๊ณ  ์ •๋„๊ฐ€ ์‹ฌํ•˜๋ฉด, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋œ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์šฉ DTO๋“ค์€ ์ •์˜๋œ ๋ณ€์ˆ˜์— ๋ฌด์ƒ‰ํ•˜๊ฒŒ ๋ชจ๋“  case๋ฅผ ์ปค๋ฒ„ํ•  ์ˆ˜ ์žˆ๊ฒŒ extend ๋˜๊ฑฐ๋‚˜, ๋ณ€์ˆ˜ ๊ฐœ์ˆ˜๊ฐ€ ๋Š˜์–ด๋‚˜๊ฒŒ ๋œ๋‹ค. ์ด๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋‹ค๋ณด๋ฉด..
java POI Excel ํ˜„์žฌ ์ปฌ๋Ÿผ(์—ด)์— ์…€ ์Šคํƒ€์ผ ์ „์ฒด ์ ์šฉํ•˜๊ธฐ ํŠน์ • ์—ด์— ๋™์ผํ•˜๊ฒŒ ์Šคํƒ€์ผ ์ ์šฉํ•˜๋Š” ์ฝ”๋“œ // cell style ์ •์˜ XSSFCellStyle wrapStyle = wb.createCellStyle(); wrapStyle.setWrapText(true); wrapStyle.setQuotePrefixed(true); XSSFFont font = wb.createFont(); font.setBold(true); wrapStyle.setAlignment(HorizontalAlignment.LEFT); XSSFDataFormat cellFormat = wb.createDataFormat(); wrapStyle.setDataFormat(cellFormat.getFormat("@")); XSSFCell cell7 = row.createCell(7, CellTy..
User-Agent ๋กœ ์ ‘์†ํ•œ ์‚ฌ์šฉ์ž ๋ธŒ๋ผ์šฐ์ € ์ฒดํฌํ•˜๊ธฐ public static String getAgent(HttpServletRequest request) { String userAgent = request.getHeader("User-Agent"); String accessBr = null; if (userAgent.indexOf("Trident") > -1) { // IE accessBr = "IE"; } else if (userAgent.indexOf("Edge") > -1) { // Edge accessBr = "Edge"; } else if (userAgent.indexOf("Whale") > -1) { // Naver Whale accessBr = "Naver Whale"; } else if (userAgent.indexOf("Opera") >..
ํ˜„์žฌ์‹œ๊ฐ„ ๊ตฌํ•˜๊ธฐ 1. ํ˜„์žฌ ์‹œ๊ฐ„ ๊ตฌํ•˜๊ธฐ // format ๊ฐ์ฒด๋กœ ์›ํ•˜๋Š” ํ˜•ํƒœ๋กœ ํ˜•์‹ ์ •์˜ SimpleDateFormat format1 = new SimpleDateFormat ( "yyyy-MM-dd HH:mm:ss"); // date ๊ฐ์ฒด ๋˜๋Š” Calendar ๊ฐ์ฒด ์‚ฌ์šฉ ๊ฐ€๋Šฅ. Date dt = new Date(); // Calendar c = Calendar.getInstance(); String dt = format1.format(dt); System.out.println(time1); 2. ๋…„/์›”/์ผ ๋”ฐ๋กœ ๊ตฌํ•ด์„œ ๊ฐ€์ง€๊ณ  ๋†€๊ธฐ Calendar cal = Calendar.getInstance(); // ๋…„ int y = cal.get(Calendar.YEAR); // ์›” int m = cal.get(Calendar...
YouTube ๊ฒ€์ƒ‰ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ - YouTube Data Api ์—ฐ๋™ ์œ ํŠœ๋ธŒ ์ฑ„๋„ ๊ฒ€์ƒ‰์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ์˜ˆ์ œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ์†Œ์Šค์—๋Š” [๊ฒ€์ƒ‰์–ด][๋”๋ณด๊ธฐ] ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์–ด ํ•ด๋‹น ๊ฐ’๋“ค๋„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋„˜๊ฒจ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์• ์ดˆ์— ํ•ด๋‹น API์—์„œ ๊ฒ€์ƒ‰์–ด๊ฐ€ ์กด์žฌํ•ด์•ผ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๊ณ , ๊ฒฐ๊ณผ์—๋Š” pageToken ์ด ํ•ญ์‹œ ๋„˜์–ด์˜ค๊ณ  ํ•ด๋‹น ํ† ํฐ์„ ๋‚ ๋ ค์„œ ํŽ˜์ด์ง• ์กฐํšŒ๋„ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํŽ˜์ด์ง• ๋˜ํ•œ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ ๋ฐ ์•ˆ๋‚ด ์‚ฌํ•ญ์€ ๋‹ค์Œ ์ฃผ์†Œ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”. developers.google.com/youtube/v3/docs/search/list?hl=ko Search: list | YouTube Data API | Google Developers API ์š”์ฒญ์— ์ง€์ •๋œ ์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ผ์น˜ํ•˜๋Š” ๊ฒ€์ƒ‰๊ฒฐ๊ณผ์˜ ๋ชจ์Œ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ฒ€์ƒ‰๊ฒฐ๊ณผ์˜ ์ง‘..
Naver Cloud Outbound Mailer API ๊ฐ€์ด๋“œ For Java ๋„ค์ด๋ฒ„ ์•„์›ƒ๋ฐ”์šด๋“œ ๋ฉ”์ผ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•  ์ผ์ด ์žˆ์–ด JAVA ๊ตฌํ˜„ ์˜ˆ์‹œ๋ฅผ ์ฐพ๋‹ค๊ฐ€ ๋‹ค์Œ์„ ๋ฐœ๊ฒฌํ•˜์˜€๋‹ค. yoshinari.tistory.com/39 [Java] Naver Cloud Platform _ Cloud Outbound Mailer ์‚ฌ์šฉํ•˜๊ธฐ ์ด๋ฒˆ์—๋Š” ๋„ค์ด๋ฒ„ Cloud Outbound Mailer๋ฅผ ์ž๋ฐ”๋กœ ๊ฐœ๋ฐœ ํ•ด๋ณด๊ฒ ๋‹ค. ๊ตฌ๊ธ€๋ง์„ ํ•ด๋ณด๋ฉด ๋„ค์ด๋ฒ„์—์„œ ์ œ๊ณตํ•˜๋Š” gitHub์— ํŒŒ์ด์ฌ์„ ์‚ฌ์šฉํ•œ ๋ฒ„์ „ https://github.com/NaverCloudPlatform/outbound_mailer_python_sample So.. yoshinari.tistory.com ์œ„ ๊ฒŒ์‹œ๊ธ€์„ ์ฐธ๊ณ ํ•˜์—ฌ ์ง„ํ–‰ํ–ˆ๋‹ค. ๋„ค์ด๋ฒ„ API ๊ฐ€์ด๋“œ์—์„œ SDK๋ฅผ ๋‹ค์šด๋ฐ›๋Š”๋‹ค. docs.gov-ncloud.com/ko/email/email-1-3.h..