IT/development205 [Git] Git Branching Strategy(feat. ๋ธ๋์น ์ ๋ต) ppt๋ก ์์ฑํ๋ ค๊ณ ํ์ผ๋ ๋๋ฌด ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆด ๊ฒ ๊ฐ์์ ๊ทธ๋ฆผ์ ์ด๊ฑธ๋ก ํ๊ณ ํ ์คํธ๋ก ๋ณด์ถฉmaster branch ๐์ค์ ์ด์์๋ฒ์ ์ฌ๋ผ๊ฐ๋ ์ต์ข ๋ฆด๋ฆฌ์ฆ ๋ฒ์ ๋ธ๋์นcandidate branch ๐ญQA Server์ ๋ฐฐํฌํด์ ์ค์๋ฒ ๋ฐ์ ์ ๊ฒ์ฆํ๋ ๋ธ๋์นcandidate branch์์ ์ต์ข ๊ฒ์ฆ์ด ๋๋ฉด ๊ทธ ๋ master์ ๋ฐ์master branch์ ์ฌ๋ผ๊ฐ๊ธฐ ๋ฐ๋ก ์ ์์คdev branch ๐๊ฐ์ธ ๋ธ๋์น์์ ๋ก์ปฌ ๊ฒ์ฆ ํ ๊ฐ๋ฐ์๋ฒ์์ ๋๋ฆฌ๋ ์ฉ๋์ ๋ธ๋์น๊ฐ๋ฐ์๋ฒ์์ ๋๋ ค๋ณด๋ ์ฉ๋๋ผ์ ์จ๊ฐ ์ก๋คํ ์์ค๊ฐ ๋ค ์์ ์ ์๋ค.(๋ฒ๊ทธ๊ฐ ์๋ ์์ค ๋ฑ๋ฑ)์ ๋ ์ด branch๋ master๋ candidate branch๋ก ๋ฐ์ํ๋ฉด ์๋๋ค.persnal branch ๐๊ฐ๋ฐ์ ๊ฐ์ ๊ฐ๋ฐํ๋ ์ฉ๋์ .. IT/development 2023. 8. 24. [springBoot] ์์ ํ์ผ ์ฝ๊ธฐ(feat. ajax) ๋ชฉ์ฐจ ํ๋ก์ธ์ค: ํ๋ฉด์์ ์์ ์ ๋ก๋ ์ ์์ ์ ๋ด์ฉ์ ์ฝ์ด์ ํ ์ด๋ธ์ ์ ์ฅ ์์กด์ฑ ์ถ๊ฐ(gradle) //springBoot ver: 2.7.7 //poi ์์กด์ฑ ์ถ๊ฐ implementation 'org.apache.poi:poi:5.1.0' implementation 'org.apache.poi:poi-ooxml:5.1.0' service @Service @Slf4j @RequiredArgsConstructor @Transactional(readOnly = true) public class ExcelService { private final ExcelMapper excelMapper; /** * ์์ ์ ๋ก๋ ํ๋ฉด * @param mv * @return */ @Override public ModelAnd.. IT/development 2023. 8. 23. [Java] ๊ฐ๋ณ์ธ์ ์ฌ์ฉ(feat. String ... str) java์์ parameter๊ฐ์์ ํ์ ์ ๋ค๋ฅด๊ฒ ํด์ ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ ๋ฉ์๋๋ฅผ ๋์ผํ ๋ฉ์๋๋ช ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.(์ค๋ฒ๋ก๋ฉ)@Slf4j public class Test { public void print(String str) { log.info("str = [{}]", str); } public void print(int num) { log.info("num = [{}]", num); } }ํ์ง๋ง parameter์ ๊ฐ์๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ์ฌ์ฉํ๊ณ ์ถ์ ๋?Test test = new Test(); //์ด๋ ๊ฒ ํธ์ถํ๊ณ ์ถ์ ๋.. test.print(1); test.print(1, 2); test.print(1, 2, 3); test.print(1, 2, 3, 4); test.print(1, 2, 3, .. IT/development 2023. 8. 22. [springBoot] daum SMTP ๋ฉ์ผ ๋ฐ์ก daum์ SMTP๋ฅผ ์ด์ฉํด์ ๋ฉ์ผ ๋ฐ์กํ๋ ์์ ๊ฐ๋ฐํ๊ฒฝ: springBoot 2.7.14, gradle ์ ํ์กฐ๊ฑด(daum smtp ํ์ฑํ) ์ค์ > IAMP/POP3(์ ๊ธฐ์ ์ ๋ณด๋ฅผ ํ๋กํผํฐ์ ๊ธฐ์ ) ์์กด์ฑ ์ถ๊ฐ(gradle) implementation 'org.springframework.boot:spring-boot-starter-mail' application.yml์ smtp ์ค์ ์ถ๊ฐ spring: mail: host: smtp.daum.net port: 465 username: #์ก์ ๋ฉ์ผ์ฃผ์(๋ณด๋ด๋ ๋ฉ์ผ ์ฃผ์) password: #์ก์ ๋ฉ์ผ ์ฃผ์์ ๋น๋ฐ๋ฒํธ(์ฌ๊ธฐ์ 2์ฐจ ์ธ์ฆ ์ฑ ๋น๋ฐ๋ฒํธ ์ ๋ ฅํจ) properties: #tls ์ค์ mail: smtp: auth: true ssl: enable:.. IT/development 2023. 8. 22. [github] github ์น vs code ์ฌ์ฉ ์น์ผ๋ก ํธ์ง๊ธฐ๋ฅผ ์ด๊ณ ์ถ์ repository์ ๊ฐ์ github.com์ .dev๋ก ์์ github.dev๋ก ๋ณ๊ฒฝ ์ ์๋์ฒ๋ผ ์น ๋ฒ์ vs code๊ฐ ์คํ๋๋ค. IT/development 2023. 8. 17. [Vue.js] Vue.js ์ฒจ๋ถํ์ผ ์ ๋ก๋ upload.html ์ฒจ๋ถํ์ผ [.jpg, .jpeg, .png, .xlsx, .hwp, .docx, .pptx, .pdf] add remove ํ์ฅ์๋ .jpg, .jpeg, .png, .xlsx, .hwp, .docx, .pptx, .pdf ๋ง ๊ฐ๋ฅํฉ๋๋ค. 5MB์ดํ ํ์ผ๋ง ์ฌ๋ ค์ฃผ์ธ์. {{ item.num }}.์ฒจ๋ถ @change="handleFileChange($event, index)" ํ์ผ ์ฒจ๋ถ ์ ์ฅ ์ ์ฝ๋๋ ๋์ ์ผ๋ก ์ฒจ๋ถํ์ผ ์์ญ์ ์ถ๊ฐ/์ญ์ ํ ์ฒจ๋ถํ์ผ์ ์ ๋ก๋ ํ๋ ๊ฐ๋จํ ์์ ์ด๋ค. ์ ์ฒด์ ์ผ๋ก ํฌ์คํ ์ ์ํด ํธ์งํ ์ฝ๋๋ผ์ ํ๊ทธ ์ด๊ณ ๋ซ๊ณ ์ ๋ง์ ์๋ ์๋ค. ์ฒจ๋ถํ์ผ ๊ด๋ จ ๋ฉ์๋๋ ์ด 4๊ฐ์ด๋ค. ์ฒจ๋ถํ์ผ ๋ฐ์ดํฐ๋ฅผ ๋ด์ ๋ฐฐ์ด์ด ์ธ์คํด์ค์ data ๊ฐ์ฒด์์ ์ด๊ธฐํ ๋ ์ํ์ด๊ณ addAtt.. IT/development 2023. 8. 13. [JavaScript] ํ ํ๋ฆฟ ๋ฌธ์์ด ์ฌ์ฉ๋ฒ(feat. '(๋ฐฑํฑ)) javascript์์ ํ ํ๋ฆฟ ๋ฌธ์์ด์ ์ฌ์ฉํด์ ๋ ๊ฐ๋ ์ฑ ๋์ ์ฝ๋๋ฅผ ์์ฑ ํ ์ ์๋ค. ์ ๋ ์ฝ๋๋ ๋์ผํ ๊ธฐ๋ฅ์ ์ํํ๋ค. ํ์ง๋ง ์ผ์ชฝ ํ ํ๋ฆฟ ๋ฌธ์์ด์ ์ฌ์ฉํ ๊ฒฝ์ฐ ๊ฐ ๋ ๊ฐ๋ ์ฑ์ด ์ข๋ค. ๋ณ์์ ๋ฌธ์์ด ๊ตฌ๋ถ์ด ์ ๋๋ค. ํ ํ๋ฆฟ ๋ฌธ์์ด์ ๋ฐฑํฑ(`)์์ ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ๋ค. ๋ฐฑํฑ์ ํค๋ณด๋ 1 ์ข์ธก์ ์๋ค. IT/development 2023. 8. 13. [JavaScript] ์์ ํ์ ์ฐฝ์์ ๋ถ๋ชจ์ฐฝ์ ํจ์ ํธ์ถ(javascript ์์ฃผ) ๋ถ๋ชจ์ฐฝ์์ ์์์ฐฝ์ ์๋์ฒ๋ผ ํ์ ์ผ๋ก ์ด์์(html ์ฝ๋๋ ์๋ต) parent.html //๋ฒํผ ํด๋ฆญ ์ child๋ผ๋ ํ์ ํธ์ถ $("#btn").on("click", function() { //ํ์ ํธ์ถ(openPopUp()์ด๋ผ๋ ๊ณตํตํจ์์์๋ ํ์ ํธ์ถํ๋ค๊ณ ๊ฐ์ ) const popup = openPopUp("/child", 1100, 700, "child"); }); //์์ ํ์ ์์ ํธ์ถํ๋ ํจ์(์์์ฐฝ์์ ๋์ด์จ ์ฌ์ ์๋ฒํธ, ๊ณ ๊ฐ๋ช ์ ๋ถ๋ชจ์ ํ๋์ ์ ์ฉ) function chooseClient(clientBizNo, clientNm) { $("#clientBizNo").val(clientBizNo); $("#projClientNm").val(clientNm); } child.html /** .. IT/development 2023. 8. 13. [springBoot] ์๋ก ๋ค๋ฅธ branch๋ฅผ ๋์์ ๋์ฐ๋ ค๋ฉด? ๊ฑฐ์ฐฝํ ๋ฐฉ๋ฒ์ ์๋๊ณ ๋งค์ฐ ๊ฐ๋จํ๋ค. ์ฌ์ด ์ดํด๋ฅผ ์ํด ์์ค์ ์จ ๋ณด๊ฒ ๋ค. A๋ผ๋ branch๋ springBoot, thymeleaf, javascript/jQuery๋ก ๊ฐ๋ฐ ๋์ด ์๋ ์ํ์ด๊ณ B๋ผ๋ branch๋ A branch์์ ์๋ก branch๋ฅผ ๋ด ๋ธ๋์น๋ค. B branch์์ ํด๋ผ์ด์ธํธ ์ฌ์ด๋๋ฅผ javascript/jQuery๋ฅผ Vue.js๋ก ์ ํํ๋ ์์ ์ ํ๊ธฐ ์ํด์๋ค. A branch์์ ๊ธฐ์กด์ ๋๋ ๊ธฐ๋ฅ์ ์ ์งํ๋ฉด์ ํ๊ฒฝ๋ง ๋ณํ๋๋ ์ํฉ์ด๋ค. ์ด ๋ A branch์ ํ๋ฉด์ ๋ณด๋ฉด์ ๊ฐ๋ฐํ๋๊ฒ ๋น์ฐํ ํธํ๋ค. ์ด๋ฐ ์ํฉ์ด๋ผ๊ณ ๊ฐ์ ํ์ ๋ ๋ช ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๊ฒ ์ง๋ง ๋ด ๊ฒฝ์ฐ๋ ์๋์ฒ๋ผ ํ๋ค. A branch๋ port ๋ณ๊ฒฝ ํ build ํด์ jarํ์ผ๋ก ๋ก์ปฌ์์ ๋์ฐ๊ณ B branch.. IT/development 2023. 8. 12. [Vue.js] ๊ธฐ์กด thymeleaf์ Vue.js ์ ์ฉํ๋ ๋ฐฉ๋ฒ 2๊ฐ์ง ๋ฐฉ๋ฒ ์กด์ฌ node.js ํ๊ฒฝ์ผ๋ก ๊ตฌ๋(node.js ๋ฐํ์ ํ๊ฒฝ ํ์, ์๋น์ค ๊ตฌ๋ ์ ์๋ฒ์ port ๋ค๋ฅด๊ฒ ๊ตฌ์ฑ) ๊ธฐ์กด thyemeleafํ์ผ์ script๋ง ์ถ๊ฐ(thyemelaf ๋ ๋๋ง ์ดํ ์กฐ์ํ๋ ๋ฐฉ์์ด๋ผ node.js ๋ถํ์) ์ฌ๊ธฐ์ 2๋ฒ ์งธ ๋ฐฉ๋ฒ ์ฑํ ๊ธฐ์กด html์ body ํ๊ทธ์์ Vue.js ๊ด๋ จ script import(์ค์ ๋ฐฐํฌ ์์ jsํ์ผ ์ง์ import ๊ถ์ฅ) vue.js๋ฅผ ์ ํ div root id ์ค์ (์์) ์ฃผ์๋ก ์ฌ์๋ช ๊ฒ์ ์ด๊ธฐํ ์ฌ์ ๋ชฉ๋ก ์ฌ์์น์ธ ์ ์ฒญ ์๋ฒ ์ฌ์๋ช ์ง๊ธ ์ง์ฑ ์ ํ๋ฒํธ ์ด๋ฉ์ผ {{ item.no }} {{ item.empNm }} {{ item.positionCd }} {{ item.roleCd }} {{ item.empHp }} {{ i.. IT/development 2023. 8. 10. ์ด์ 1 ยทยทยท 3 4 5 6 7 8 9 ยทยทยท 21 ๋ค์