Java31 [jstl] selectbox ์กฐ๊ฑด๊ณผ ์ผ์นํ๋ฉด ์ ํ๊ฐ ์ ์ง(feat. ์์ธํ๋ฉด) ๊ฐ๋ง์ ์ถ์ต์(?) jsp๋ก ํ๋ฉด๋จ์ ๊ฐ๋ฐํ๊ฒ ๋์๊ณ ๊ทธ ์ค jstl์์ ๋ง์ด ์ฐ๋ ๊ธฐ๋ฅ์ธ๋ฐ ์ ์๊ฐ์ด ๋์ง ์์ ์์ ๋ ๊ฑฐ์ ์ฝ๋๋ฅผ ๋ค์ ธ์ ์ฐพ์๊ณ ๋ค์์ ์ํด ๋ฉ๋ชจ๋ฅผ ํ๋ค. ์์ธํ๋ฉด์์ ๊ณตํต์ฝ๋์ ๊ฐ์ ๋ถ๋ฌ์์ selectbox์ ๋ฟ๋ฆฌ๋๋ฐ ํ์ ๊ฐ์ ์ํ ์ฝ๋์ ๊ณตํต์ฝ๋์ ์ฝ๋๊ฐ ์ผ์นํ๋ฉด selectedํ๋ ๊ฒฝํ์๋ค์๊ฒ ์์ฃผ ์ต์ํ ๊ธฐ๋ฅ์ด๋ค. ex) ํ์ํ ์ด๋ธ์ ๊ฐ์ ์ํ์ฝ๋๊ฐ ์๊ณ ์ด๋ ๊ณตํต์ฝ๋ ํ ์ด๋ธ์ ์ฝ๋์ ๋งคํ์ด ๋๋ ์ํฉ์ด๋ค. ์ฝ๋๋ฅผ ๋ณด๋ฉด ์ดํด๊ฐ ๋ ๊ฑฐ๋ค. Controller //Controller๋ด์ ๋ชจ๋ view์์ ์ ๋ถ ์ธ ์ ์๋๋ก ์๋์ฒ๋ผ @ModelAttribute๋ก ์ ์ธ์ ํ๋ค. /** ๊ฐ์ ์ํ ๋ชฉ๋ก*/ @ModelAttribute("mberSttusList") private List .. IT/development 2023. 12. 22. [IDE] IntelliJ auto import ์ ์ค์ ์ ํ๊ณ ์ฐธ์กฐํ ํด๋์ค๋ฅผ ์ฝ๋์ ์์ฑํ๋ฉด ์๋์ผ๋ก import ๋๋ค.(์์ฃผ ํธํ๋ค.) IT/development 2023. 12. 17. [Java] ์ถ์ ํด๋์ค, ์ถ์ ๋ฉ์๋ ๊ฐ๋จ ์์ ๋ชฉ์ฐจ ์ฌ๋์ด๋ผ๋ ๋ถ๋ชจ ํด๋์ค๊ฐ ์๊ณ ๋ชจ๋ ์ฌ๋์ ๊ณตํต ๊ธฐ๋ฅ์ธ ๊ฑท๊ธฐ์ ๋จน๊ธฐ๋ ์ผ๋ฐ ๋ฉ์๋๋ก ์ ์ ๋ฌผ๋ก ๊ฑท๊ธฐ์ ๋จน๊ธฐ๋ ์ผ๋ง๋ ์ง ์ฌ๋๋ง๋ค ๋ค๋ฅด๊ฒ ๋จน์ ์ ์์ง๋ง ์ฌ๊ธฐ์ ์ฌํํ๊ฒ ์ค๊ณ ์ฐ๋ด์ ๋ณด๋ ์ฌ๋๋ง๋ค ๋ค๋ฅด๊ธฐ์ ์ถ์ ๋ฉ์๋๋ก ๋ง๋ค์ด์ ์์์์ ์ฌ์ ์ ํด์ ์ฌ์ฉํ๋๋ก ์ ์ ๋ชจ๋ ์ฌ๋์ ๋์ผํ๊ฒ ๋จน๊ณ ๊ฑท์ง๋ง ์ฐ๋ด์ ๋ณด๋ ๋ค๋ฅด๋ค๋ ์ปจ์ AbstractPeople ๐ package abstract1; public abstract class AbstractPeople { /* ์ฐ๋ด์ ๋ณด */ public abstract void salary(int money); public void walk() { System.out.println("๊ฑท๋๋ค."); } public void eat() { System.out.println(".. IT/development 2023. 12. 5. [springBoot] springBoot,java version downgrade springBoot ์ด๊ธฐํ ํ ๋ ์ธ์ ๋ถํฐ์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ์ผ๋ java๋ฒ์ ์ด 17์ด ๊ฐ์ฅ min version์ด ๋์๋ค. (์ด ์ปดํจํฐ๋ง ์ด๋ฐ๊ฑด์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค.) ๋ง๋ค ์ ํ๋ฆฌ์ผ์ด์ ์ spring batch 4๋ฒ์ ์ด๊ธฐ์ ํ๋ก์ ํธ๋ฅผ java 17๋ฒ์ ์ผ๋ก ๋ง๋ ํ ๋ค์ด๊ทธ๋ ์ด๋ ํ๋ค. ํฌ์คํ ํ ๊น ๋ง๊น ํ๋ค๊ฐ ์ฌ์ํ ๊ฒ๋ ๋ฉ๋ชจํ์๋ ์ฃผ์๋ผ ๋ฉ๋ชจํ๋ค. build.gradleํ์ผ์ ๋ณ๊ฒฝํ ๋ถ๋ถ์ ์๋์ ๊ฐ๋ค. ๋ฒ์ ์์ ํ ๋ค์ด๊ทธ๋ ์ด๋ํ ๋ฒ์ ์ ๋ง๊ฒ ์์กด์ฑ ์ถ๊ฐํด์ผ ํ๋ค. gradle plugin ๋ฒ์ ์์ ํ ํ๊ฒฝ์ค์ , ํ๋ก์ ํธ ๊ตฌ์กฐ์ jdk๋ ๋ณ๊ฒฝํด์ผ ํ๋ค. ์ด๋ ๊ฒ ์์ ํ ๋ค์ด๊ทธ๋ ์ด๋ํ ๋ฒ์ ์ ๋ง๊ฒ ์์กด์ฑ์ด ์ถ๊ฐ๋์๋์ง ํ์ธํ๋ฉด ๋๋ค. ๊ฐ์ธ ์คํฐ๋ ๊ธฐ๋ก์ ๋ฉ๋ชจํ๋ ๊ณต๊ฐ์ด๋ผ ํ๋ฆฐ์ ์ด ์์ ์ ์์ต๋๋ค. ํ๋ฆฐ ์ ์์ .. IT/development 2023. 11. 27. [Java] linux jdk ํ๊ฒฝ๋ณ์ ์ธํ linux์์ ์ง์ ๋ค์ด๋ก๋ ๋ฐ๊ฑฐ๋ ์ค์นํ์ผ์ ์ธ๋ถ์์ ๊ตฌํ ๋ค ์ ๋ก๋ ํ๊ฑฐ๋ ํด์ jdk๋ฅผ ์ค์น ํ๊ฒฝ๋ณ์ ์ธํ ๐ viํธ์ง๊ธฐ๋ก ํ๋กํ์ผ ์คํ # home๊ฒฝ๋ก์ ํ๋กํ์ผ์ viํธ์ง๊ธฐ๋ก ์ฐ๋ค. vi ~/.bash_profile jdk๊ฒฝ๋ก๋ฅผ ์ค์ ํด ์ฃผ๊ณ export, path๋ ์ก๋๋ค. #JAVA export JAVA_HOME=jdk๊ฐ ์์นํ ๊ฒฝ๋ก ์ ๋ ฅ(ex: home/test/)/jdk1.8.0_221(jdk ํด๋) export JRE_HOME=$JAVA_HOME/jre #PATH #PATH์ ์์์ ์ค์ ํ $JAVA_HOME ๊ฒฝ๋ก๋ฅผ ์ ์ฅํ๊ณ ํ์ฌ PATH๋ฅผ ์ ์งํ๊ฒ ๋ค๋ ์๋ฏธ PATH=$JAVA_HOME/bin:${PATH} export PATH ํ๋กํ์ผ ๋ด์ฉ ์ ์ฉ source ~/.bash_profile.. IT/development 2023. 10. 27. [springBoot] Spring AOP simple source ๋ชฉ์ฐจ RestController ๐ package study.springaoptest.web; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import study.springaoptest.model.User; import study.springaoptest.service.TestService; @RestController @Slf4j @RequestMapping("/api/v1/user") @RequiredArgsConstructor public class TestRestController { private final TestSer.. IT/development 2023. 10. 19. [springBoot] springBoot ์คํ ์ dataSource ์ ์ธ springBoot ์คํ ์ DB ์ฐ๊ฒฐ์ ๊ธฐ๋ํ๋๋ฐ DB์ฐ๊ฒฐ์ด ํ์์๋ ๊ธฐ๋ฅ์ ๋ง๋ค ๋๋ ์ด์กฐ์ฐจ๋ ๊ท์ฐฎ๋ค. ๊ทธ๋ด ๋ ์๋์ฒ๋ผ ๋ฉ์ธ ๋ฉ์๋์ @SpringBootApplication์ exclude ์ต์ ์ ์ฃผ๋ฉด ๋๋ค. package study.springaoptest1; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; @SpringBootApplication(exclude = {DataSourceAut.. IT/development 2023. 10. 14. [springBoot] ์ธํฐ์ ํฐ๋ฅผ ํตํด ๋ฉ๋ด ์ ๊ทผ ๊ด๋ฆฌ ์์คํ ์์๋ ๋ณด์ ๋๋ฌธ์ ๋ก๊ทธ์ธํ ์ฌ์ฉ์์ ๋ฉ๋ด ์ ๊ทผ ๋ฒ์๋ฅผ ์ ํํด์ผ ํ๋ค. ์๋ฅผ ๋ค์ด ์์คํ ๊ด๋ฆฌ์๋ ์์คํ ๊ด๋ฆฌ ๋ฉ๋ด๋ง ์ ๊ทผํ ์ ์์ด์ผ ํ๊ณ ๊ธ์ฌ๊ด๋ฆฌ์๋ ๊ธ์ฌ๋ฉ๋ด์๋ง ์ ๊ทผํ ์ ์์ด์ผ ํ๋ค. ์ธํฐ์ ํฐ๋ฅผ ํตํด ์๋์ฒ๋ผ ๊ตฌํํ๋ค. package kr.dev.common.interceptor; import kr.dev.cmmn.mapper.CmmnMapper; import kr.dev.cmmn.model.MenuVo; import kr.dev.cmmn.service.CmmnService; import kr.dev.user.model.EmpVO; import kr.dev.user.service.UserService; import lombok.extern.slf4j.Slf4j; import org.springf.. IT/development 2023. 9. 24. [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] ์๋ก ๋ค๋ฅธ 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. ์ด์ 1 2 3 4 ๋ค์