์ธํ๋ฐ(118)
-
์คํ๋ง ์ปจํ ์ด๋ ๋ฑ๋ก
์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ, ์ ํ๋ฆฌ์ผ์ด์ ์ด๊ธฐํ (tistory.com) ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ, ์ ํ๋ฆฌ์ผ์ด์ ์ด๊ธฐํ ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ๋? (tistory.com) ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ๋? WAS๋ฅผ ์คํํ๋ ์์ ์ ํ์ํ ์ด๊ธฐํ ์์ ๋ค( ์๋น์ค์ ํ์ํ ํํฐ์ ์๋ธ๋ฆฟ์ ๋ฑ๋ก, ์คํ๋ง ์ปจํ ์ด๋ ์์ฑ, ๋์คํจ์ฒ ์๋ธ๋ฆฟ hyejin.tistory.com ์ ๋ฒ ๊ธ์์๋ ์๋ธ๋ฆฟ์ ๋ง๋ค๊ณ ์ง์ ๋ฑ๋ก๋ ํด๋ณด๊ณ , ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ๋ฅผ ํ๊ณ ๊ฑฐ๊ธฐ์ ์ข ๋ ํ์ฅํด์ ์ ํ๋ฆฌ์ผ์ด์ ์ด๊ธฐํ๊น์ง ํด๋ดค๋ค. ์ด์ ์ฌ๊ธฐ์ ์คํ๋ง์ ๋ํด์ ์๋ธ๋ฆฟ ์ปจํ ์ด๋์ ์คํ๋ง์ ์ถ๊ฐํด๋ณผ ๊ฒ์ด๋ค. 1๏ธโฃ ์คํ๋ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ build.gradle์ ์คํ๋ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ถ๊ฐํด์ค๋ค. //์คํ๋ง MVC ์ถ๊ฐ implementation 'org...
2023.04.13 -
์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ, ์ ํ๋ฆฌ์ผ์ด์ ์ด๊ธฐํ
์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ๋? (tistory.com) ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ๋? WAS๋ฅผ ์คํํ๋ ์์ ์ ํ์ํ ์ด๊ธฐํ ์์ ๋ค( ์๋น์ค์ ํ์ํ ํํฐ์ ์๋ธ๋ฆฟ์ ๋ฑ๋ก, ์คํ๋ง ์ปจํ ์ด๋ ์์ฑ, ๋์คํจ์ฒ ์๋ธ๋ฆฟ ๋ฑ๋ก ๋ฑ..) ์ด ์๋๋ฐ WAS๊ฐ ์ ๊ณตํ๋ ์ด๊ธฐํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด, WAS hyejin.tistory.com WAS ๋ฅผ ์คํํ๋ ์์ ์ ํ์ํ ์ด๊ธฐํ ์์ ๋ค์ด ์๋๋ฐ ์์ ์๋ ์ด๋ฅผ web.xml์ ์ด์ฉํด์ ์ด๊ธฐํํ์ง๋ง, ์ง๊ธ์ ์๋ธ๋ฆฟ ์คํ์์ ์๋ฐ ์ฝ๋๋ฅผ ์ฌ์ฉํ ์ด๊ธฐํ๋ ์ง์ํ๊ณ ์๋ค. ServletContainerInitializer : ์๋ธ๋ฆฟ์ ServletContainerInitializer ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํด์ ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๊ณ , onStartup() ์คํ ์์ ์ ์ด ๋ฉ์๋..
2023.04.11 -
์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ๋?
WAS๋ฅผ ์คํํ๋ ์์ ์ ํ์ํ ์ด๊ธฐํ ์์ ๋ค( ์๋น์ค์ ํ์ํ ํํฐ์ ์๋ธ๋ฆฟ์ ๋ฑ๋ก, ์คํ๋ง ์ปจํ ์ด๋ ์์ฑ, ๋์คํจ์ฒ ์๋ธ๋ฆฟ ๋ฑ๋ก ๋ฑ..) ์ด ์๋๋ฐ WAS๊ฐ ์ ๊ณตํ๋ ์ด๊ธฐํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด, WAS ์คํ ์์ ์ ์ด๋ฌํ ์ด๊ธฐํ ๊ณผ์ ์ ์งํํ ์ ์๋ค. ์์ ์ web.xml์ ์ฌ์ฉํด์ ์ด๊ธฐํํ์ง๋ง, ์ง๊ธ์ ์๋ธ๋ฆฟ ์คํ์์ ์๋ฐ ์ฝ๋๋ฅผ ์ฌ์ฉํ ์ด๊ธฐํ๋ ์ง์ํ๊ณ ์๋ค. ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ์ด๊ธฐํ ๊ฐ๋ฐ ServletContainerInitializer ์๋ธ๋ฆฟ์ ServletContainerInitailzer๋ผ๋ ์ด๊ธฐํ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋๋ฐ ์ด๋ฆ ๊ทธ๋๋ก ์๋ธ๋ฆฟ ์ปจํ ์ด๋๋ฅผ ์ด๊ธฐํํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. public class MyContainerInitV1 implements ServletContainerInitia..
2023.04.10 -
IntelliJ์์ ํฐ์บฃ ์ค์ ํ๋ ๋ฐฉ๋ฒ
JAVA 17 ์ค์น & Tomcat 10 ๋ฒ์ ์ค์น ํ๋ ๋ฐฉ๋ฒ (tistory.com) JAVA 17 ์ค์น & Tomcat 10 ๋ฒ์ ์ค์น ํ๋ ๋ฐฉ๋ฒ ์ธํ๋ฐ [์คํ๋ง ๋ถํธ - ํต์ฌ ์๋ฆฌ์ ํ์ฉ] ๊ฐ์๋ฅผ ๋ฃ๊ณ ๋ด์ฉ์ ์ ๋ฆฌํ๋ ์นดํ ๊ณ ๋ฆฌ๋ฅผ ์ถ๊ฐํ๋ค. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%ED%95%B5%EC%8B%AC%EC%9B%90%EB%A6%AC-%ED%99%9C%EC%9A% hyejin.tistory.com ์๋ฐ 17, ํฐ์บฃ 10 ๋ฒ์ ์ ์ค์นํ๊ณ ์ด์ ์ธํ ๋ฆฌ์ ์ด์์ ์ด ์ค์นํ ํฐ์บฃ์ ์ค์ ํ ๊ฒ์ด๋ค. ์ธํ ๋ฆฌ์ ์ด์ ์ ๋ฃ ๋ฒ์ ๊ณผ ๋ฌด๋ฃ ๋ฒ์ ์ ๋ฐ๋ผ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ด ์กฐ๊ธ ๋ค๋ฅด๋ค๊ณ ํ๋๋ฐ... ๋๋ ์ ๋ฃ ๋ฒ์ ์ ..
2023.04.10 -
Jar ์ War ์ฐจ์ด์ ์ ? War ํ์ผ ๋ฐฐํฌํ๋ ๋ฐฉ๋ฒ
1๏ธโฃ Jar (Java Archive) ์๋ฐ๋ ์ฌ๋ฌ ํด๋์ค์ ๋ฆฌ์์ค๋ฅผ ๋ฌถ์ด์ jar ๋ผ๊ณ ํ๋ ์์ถ ํ์ผ์ ๋ง๋ค ์ ์๋ค. ์ด ํ์ผ์ JVM ์์์ ์ง์ ์คํ๋๊ฑฐ๋ ๋ค๋ฅธ ๊ณณ์์ ์ฌ์ฉํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์ ๊ณต๋๋ค. Jar๋ ํด๋์ค์ ๊ด๋ จ ๋ฆฌ์์ค๋ฅผ ์์ถํ ๋จ์ํ ํ์ผ๋ก, ์ด๋ฅผ ํ์ํ ๊ฒฝ์ฐ์ ์ง์ ์คํํ ์๋ ์๊ณ ๋ค๋ฅธ ๊ณณ์์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉํ ์๋ ์๋ค. 2๏ธโฃ War (Web Application Archive) war ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ WAS ์ ๋ฐฐํฌํ ๋ ์ฌ์ฉํ๋ ํ์ผ๋ก, ์ฆ ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ ์์์ ์คํ๋๊ณ , HTML ๊ฐ์ ์ ์ ๋ฆฌ์์ค ์ ํด๋์ค ํ์ผ์ ๋ชจ๋ ํจ๊ป ํฌํจํ๋ค. War๋ ๊ตฌ์กฐ๋ฅผ ์ง์ผ์ผ ํ๋๋ฐ WEB-INF - classes : ์คํ ํด๋์ค ๋ชจ์ - lib : ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ชจ์ - ..
2023.04.07 -
JAVA 17 ์ค์น & Tomcat 10 ๋ฒ์ ์ค์น ํ๋ ๋ฐฉ๋ฒ
์ธํ๋ฐ [์คํ๋ง ๋ถํธ - ํต์ฌ ์๋ฆฌ์ ํ์ฉ] ๊ฐ์๋ฅผ ๋ฃ๊ณ ๋ด์ฉ์ ์ ๋ฆฌํ๋ ์นดํ ๊ณ ๋ฆฌ๋ฅผ ์ถ๊ฐํ๋ค. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%ED%95%B5%EC%8B%AC%EC%9B%90%EB%A6%AC-%ED%99%9C%EC%9A%A9/dashboard ์คํ๋ง ๋ถํธ - ํต์ฌ ์๋ฆฌ์ ํ์ฉ - ์ธํ๋ฐ | ๊ฐ์ ์ค๋ฌด์ ํ์ํ ์คํ๋ง ๋ถํธ๋ ์ด ๊ฐ์ ํ๋๋ก ๋ชจ๋ ์ ๋ฆฌํด๋๋ฆฝ๋๋ค., - ๊ฐ์ ์๊ฐ | ์ธํ๋ฐ www.inflearn.com ์คํ๋ง ๋ถํธ๋ฅผ ๊ณต๋ถํ๊ณ ์ฌ์ฉํ์ง๋ ๊ฝค ๋์ง๋ง ์๋ฆฌ๋ฅผ ์๊ณ ์ฌ์ฉํ๋ค๊ธฐ ๋ณด๋ค๋ ๊ทธ๋ฅ ์คํ๋ง์ ์ฌ์ฉํ๋ฉด์ ์๋์ผ๋ก ? ์ฌ์ฉํ๋ค๊ณ ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ด๋ฒ์ ๊ฐ์๊ฐ ๋์จ๊น์ ํ๋ฒ ๋ค์ด๋ณด๋ ๊ฒ..
2023.04.06 -
[QueryDSL] fetchResults(), fetchCount() Deprecated
์์ ๋ก ์ด ์ฝ๋๋ฅผ ๋ณด๋ฉด fetchResults๊ฐ Deprecated๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. Querydsl์ fetchCount(), fetchResults()๋ ๊ฐ๋ฐ์๊ฐ ์์ฑํ select ์ฟผ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก count ์ฟผ๋ฆฌ๋ฅผ ๋ด๋ถ์์ ๋ง๋ค์ด์ ์คํํ๋ ๋ฐฉ์์ด๋ค. ๊ทธ๋ฐ๋ฐ ์ด ๊ธฐ๋ฅ์ select ๊ตฌ๋ฌธ์ ๋จ์ํ count ์ฒ๋ฆฌํ๋ ์ฉ๋๋ก ๋ฐ๊พธ๋ ์ ๋์ด๊ธฐ ๋๋ฌธ์ ๋จ์ํ ์ฟผ๋ฆฌ์์๋ ์ ๋์ํ์ง๋ง, ๋ณต์กํ ์ฟผ๋ฆฌ์์๋ ์ ๋๋ก ๋์ํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ Querydsl์ ํฅํ fetchCount(), fetchResulsts() ๋ฅผ ์ง์ํ์ง ์๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ๊ทผ๋ฐ Querydsl์ ๋ณํ๊ฐ ๋น ๋ฅธํธ์ด ์๋๊ธฐ ๋๋ฌธ์ ๋น์ฅ ํด๋น ๊ธฐ๋ฅ์ ์ ๊ฑฐํ์ง๋ ์์ ๊ฒ์ด๋ค. ๐ count ์ฟผ๋ฆฌ๊ฐ ํ์ํ๋ค๋ผ๋ฉด ๋ณ๋๋ก ์์ฑํด์ผ ํ๋ค. ์ ..
2022.10.18 -
[QueryDSL] 7. ์คํ๋ง ๋ฐ์ดํฐ JPA๊ฐ ์ ๊ณตํ๋ Querydsl ๊ธฐ๋ฅ
https://www.inflearn.com/course/Querydsl-%EC%8B%A4%EC%A0%84/dashboard ์ค์ ! Querydsl - ์ธํ๋ฐ | ๊ฐ์ Querydsl์ ๊ธฐ์ด๋ถํฐ ์ค๋ฌด ํ์ฉ๊น์ง, ํ๋ฒ์ ํด๊ฒฐํด๋ณด์ธ์!, - ๊ฐ์ ์๊ฐ | ์ธํ๋ฐ... www.inflearn.com ํด๋น ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. ๐๐๐ฅฐ โ ์ด๋ฒ ๊ฐ์์์๋ ์คํ๋ง ๋ฐ์ดํฐ JPA๊ฐ ์ ๊ณตํ๋ Querydsl ๊ธฐ๋ฅ์ ๋ํด์ ์๊ฐํ๋๋ฐ ์ฌ๊ธฐ์ ์๊ฐํ๋ ๊ธฐ๋ฅ๋ค์ ๋จ์ํ ๊ฒฝ์ฐ์๋ ํธํ์ง๋ง ์ ์ฝ์ด ์ปค์ ๋ณต์กํ ์ค๋ฌด ํ๊ฒฝ์์ ์ฌ์ฉํ๊ธฐ์๋ ๋ง์ด ๋ถ์กฑํ ํธ์ด๋ผ๊ณ ํ๋ค. ๊ทธ๋ผ์๋ ์ผ๋จ ์คํ๋ง ๋ฐ์ดํฐ์์ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ด๊ธฐ ๋๋ฌธ์ ๊ฐ๋จํ ์๊ฐํ๊ณ ์ ๋ถ์กฑํ์ง ์ค๋ช ํด์ค๋ค๊ณ ํ๋ค. 1๏ธโฃ ์ธํฐํ์ด์ค ์ง์ - QuerydslPred..
2022.10.18 -
[QueryDSL] 6. ์ค๋ฌด ํ์ฉ - ์คํ๋ง ๋ฐ์ดํฐ JPA์ QueryDSL
https://www.inflearn.com/course/Querydsl-%EC%8B%A4%EC%A0%84/dashboard ์ค์ ! Querydsl - ์ธํ๋ฐ | ๊ฐ์ Querydsl์ ๊ธฐ์ด๋ถํฐ ์ค๋ฌด ํ์ฉ๊น์ง, ํ๋ฒ์ ํด๊ฒฐํด๋ณด์ธ์!, - ๊ฐ์ ์๊ฐ | ์ธํ๋ฐ... www.inflearn.com ํด๋น ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. ๐โญ 1๏ธโฃ ์คํ๋ง ๋ฐ์ดํฐ JPA ๋ฆฌํฌ์งํ ๋ฆฌ ๋ณ๊ฒฝ https://hyejin.tistory.com/m/828 [QueryDSL] 5. ์ค๋ฌด ํ์ฉ - ์์ JPA์ QueryDSL 1๏ธโฃ ์์ JPA ๋ฆฌํฌ์งํ ๋ฆฌ์ Querydsl - ์์ JPA๋ฆฌํฌ์งํ ๋ฆฌ MemberJpaRepository ์คํ๋ง ๋ฐ์ดํฐ JPA ์์ด ์์ํ JPA ๋ง์ ์ฌ์ฉํ ๋ฆฌํฌ์งํ ๋ฆฌ์ด๋ค. ์ฐธ๊ณ ๋ก findById..
2022.10.17 -
[QueryDSL] 5. ์ค๋ฌด ํ์ฉ - ์์ JPA์ QueryDSL
1๏ธโฃ ์์ JPA ๋ฆฌํฌ์งํ ๋ฆฌ์ Querydsl - ์์ JPA๋ฆฌํฌ์งํ ๋ฆฌ MemberJpaRepository ์คํ๋ง ๋ฐ์ดํฐ JPA ์์ด ์์ํ JPA ๋ง์ ์ฌ์ฉํ ๋ฆฌํฌ์งํ ๋ฆฌ์ด๋ค. ์ฐธ๊ณ ๋ก findByIdํ ๋ ๋ฆฌํดํ์ ์ Optional๋ก ์คฌ๋๋ฐ ์ด์ ๋ id๋ก ์กฐํ๋ฅผ ํ์ ๋, ์ด์ ํด๋นํ๋ ํ์์ด ์์ ์๋ ์๊ธฐ ๋๋ฌธ์ Optional๋ก ํ๋ฒ ๊ฐ์ธ์ ๋ฆฌํดํด์คฌ๋ค. - ์์ JPA๋ฆฌํฌ์งํ ๋ฆฌ ํ ์คํธ -> ์์์ ๋ง๋ MemberJpaRepository๊ฐ ๋ฌธ์ ์์ด ์ ๋์๊ฐ๋์ง ๋จ์ํ ํ์ธํ๊ธฐ ์ํ ํ ์คํธ์ด๋ค. (ํ ์คํธ ๊ฒฐ๊ณผ๋ ๋น์ฐํ ์ฑ๊ณต) 2๏ธโฃ Querydsl ์ฌ์ฉ - ์์ JPA๋ฆฌํฌ์งํ ๋ฆฌ : Querydsl ์ถ๊ฐ findAll()๊ณผ findByUsername()์ ๋ํด์ Querydsl์ง ์ฝ๋์ด๋ค. (ํ์คํ..
2022.10.12 -
[QueryDSL] 4. ์ค๊ธ ๋ฌธ๋ฒ
https://www.inflearn.com/course/Querydsl-%EC%8B%A4%EC%A0%84/dashboard ์ค์ ! Querydsl - ์ธํ๋ฐ | ๊ฐ์ Querydsl์ ๊ธฐ์ด๋ถํฐ ์ค๋ฌด ํ์ฉ๊น์ง, ํ๋ฒ์ ํด๊ฒฐํด๋ณด์ธ์!, - ๊ฐ์ ์๊ฐ | ์ธํ๋ฐ... www.inflearn.com ์ด ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. ๐ 1๏ธโฃ ํ๋ก์ ์ ๊ฒฐ๊ณผ ๋ฐํ - ๊ธฐ๋ณธ ํ๋ก์ ์ : select ๋์ ์ง์ - ํ๋ก์ ์ ๋์์ด ํ๋์ธ ๊ฒฝ์ฐ ํ๋ก์ ์ ๋์์ด ํ๋๋ฉด ํ์ ์ ๋ช ํํ๊ฒ ์ง์ ํ ์ ์์. ํ๋ก์ ์ ๋์์ด ๋ ์ด์์ด๋ฉด ํํ์ด๋ DTO๋ก ์กฐํ - ํ๋ก์ ์ ๋์์ด ๋ ์ด์์ธ ๊ฒฝ์ฐ : ํํ ์กฐํ -> ํํ ์กฐํ๋ ํ๋ก์ ์ ๋์์ด ๋ ์ด์์ผ ๋ ์ฌ์ฉํ๋ค. ๐ค ์ฐธ๊ณ ๋ก Tuple์ ๋ฆฌํฌ์งํ ๋ฆฌ ์์์๋ง ํ์ํ ๋ ์ฌ..
2022.10.11 -
[QueryDSL] 3. ๊ธฐ๋ณธ ๋ฌธ๋ฒ(2) (์๋ธ์ฟผ๋ฆฌ, ์์, ๋ฌธ์ ๋ํ๊ธฐ)
https://hyejin.tistory.com/807 [QueryDSL] 3. ๊ธฐ๋ณธ ๋ฌธ๋ฒ(1) Q-Type, ๊ฒ์ ์กฐ๊ฑด ์ฟผ๋ฆฌ, ๊ฒฐ๊ณผ ์กฐํ, ์ ๋ ฌ, ํ์ด์ง, ์งํฉ, ์กฐ์ธ(ํ์น ์กฐ์ธ, on 1๏ธโฃ JPQL vs Querydsl ํ ์คํธ ๊ธฐ๋ณธ ์ฝ๋ QuerydslBasicTest -> ํ ์คํธ๋ฅผ ์ํด์ ๊ณ์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ๊ณ ํ๊ธฐ ๊ท์ฐฎ์ผ๋๊น @BeforeEach ์ด๋ ธํ ์ด์ ์ ํตํด์ ๋ฏธ๋ฆฌ ์ ํ๋ฆฌ์ผ์ด์ ๋ก๋ฉ๋ ๋ member์ Team ๋ฐ. hyejin.tistory.com 1๏ธโฃ ์๋ธ ์ฟผ๋ฆฌ : com.querydsl.jpa.JPAExpression ์ฌ์ฉ - ์๋ธ ์ฟผ๋ฆฌ eq ์ฌ์ฉ where ์ ์์ ์๋ธ ์ฟผ๋ฆฌ๋ก ์ฌ์ฉํ๋๋ฐ ์ด๋ JPAExpression์ static import ํด์ ์ฌ์ฉํ ์ ์๋ค. - ์๋ธ..
2022.10.11