π€©μ°μ λλμ΄ μ€νλ§λΆνΈ μμ!! λ무 μ€λ λΉ.
β
μ€νλ§ μνκ³ μκ°
μ€νλ§μ λ€μν λͺ¨λκ³Ό λΌμ΄λΈλ¬λ¦¬λ‘ ꡬμ±λμ΄ μμΌλ©°, IoC(μ μ΄μ μμ )μ DI(μμ‘΄μ± μ£Όμ
) κ°μ ν΅μ¬ μμΉμ ν΅ν΄ μ ν리μΌμ΄μ
μ νμ₯μ±κ³Ό μ μ°μ±μ λμ
λλ€.
μΉ κ°λ°, λ°μ΄ν° μ‘μΈμ€, 보μ λ± λ€μν μμμ ν¬κ΄νλ λ°©λν μνκ³λ₯Ό μλν©λλ€.
β
μ€νλ§ λΆνΈμ λ±μ₯
μ€νλ§ λΆνΈλ μ€νλ§ νλ μμν¬μ 볡μ‘ν μ€μ μ μλννμ¬ μ΅μνμ μ€μ λ§μΌλ‘λ κ°λ ₯ν μ€νλ§ κΈ°λ° μ ν리μΌμ΄μ
μ ꡬμΆν μ μκ² λμμ€λλ€.
XML μ€μ νμΌμ΄λ λ²κ±°λ‘μ΄ μλ° μ€μ ν΄λμ€λ₯Ό μμ±ν νμ μμ΄ λΉ λ₯΄κ² μμν μ μμ΅λλ€.
β
μ£Όμ νΉμ§ 1: μλ ꡬμ±
μ€νλ§ λΆνΈλ μ ν리μΌμ΄μ
μ ν΄λμ€ν¨μ€μ μμ‘΄μ±μ λΆμν΄, νμν μ€μ μ μλμΌλ‘ μ μ©ν©λλ€. κ°λ°μλ λ³λμ μ€μ μμ΄λ κ³§λ°λ‘ κΈ°λ₯μ μ¬μ©ν μ μμ΅λλ€.
β
μ£Όμ νΉμ§ 2: μ€νν° ν¨ν€μ§
μ€νλ§ λΆνΈλ 곡ν΅μΌλ‘ μ¬μ©λλ λΌμ΄λΈλ¬λ¦¬ λ¬Άμμ 'μ€νν°' ννλ‘ μ 곡ν©λλ€. νμν κΈ°λ₯μ λ§λ μ€νν° μμ‘΄μ±λ§ μΆκ°νλ©΄, 볡μ‘ν λ²μ κ΄λ¦¬λ νΈνμ± λ¬Έμ λ₯Ό μ κ²½ μΈ νμκ° μμ΅λλ€.
β
μ£Όμ νΉμ§ 3: λ
립 μ€νν μ ν리μΌμ΄μ
μ€νλ§ λΆνΈλ λ΄μ₯ ν°μΊ£, μ ν° λ±μ ν¬ν¨νμ¬, λ³λμ μΉ μλ² μμ΄λ μ ν리μΌμ΄μ
μ μ€νν μ μμ΅λλ€. μ€ν κ°λ₯ν JAR(one-jar) ννλ‘ λ°°ν¬κ° κ°νΈν΄μ§λλ€.
β
μ£Όμ νΉμ§ 4: νλ‘λμ
μ€λΉ κΈ°λ₯
μ€νλ§ λΆνΈλ λͺ¨λν°λ§, λ‘κΉ
, 보μ λ± νλ‘λμ
νκ²½μμ νμν κΈ°λ₯λ€μ κΈ°λ³Έμ μΌλ‘ μ 곡νλ©°, Actuatorλ₯Ό ν΅ν΄ μ ν리μΌμ΄μ
μνλ₯Ό μ½κ² μ κ²ν μ μμ΅λλ€.
β
μ€νλ§ λΆνΈμ μ₯μ
λΉ λ₯Έ νλ‘ν νμ΄ν, κ°νΈν μ€μ , λ΄μ₯ μλ² μ 곡 λ±μΌλ‘ κ°λ°μλ λΉμ¦λμ€ λ‘μ§μ μ§μ€ν μ μμ΅λλ€. μ€μ κ³Ό ꡬμ±μ΄ λ¨μν΄μ§λ©΄μ μ μ§λ³΄μμ νμ₯μ±λ ν¬κ² ν₯μλ©λλ€.
β IDE μ€μΉ
JetBrains 곡μ ννμ΄μ§μμ Community(무λ£) λλ Ultimate(μ λ£) λ²μ μ λ€μ΄λ‘λνμΈμ.
β
Java Development Kit(JDK)λ₯Ό μ€μΉν ν, ν°λ―Έλμμ java --versionμ μ
λ ₯ν΄ μ€μΉλ₯Ό νμΈν©λλ€.
1οΈβ£ menu > File > Project Structure > Project
2οΈβ£ SDK -> Eclipse Temurin 17 νμΈ
β μμΌλ©΄ -> μ ν

β μμΌλ©΄ ->


3οΈβ£ menu > run > edit configuration
java-17, -cp: hello.main νμΈ
main method μλ ν΄λμ€ κ²½λ‘κΉμ§ μ νμΈ ν ok

4οΈβ£ λ§μ§λ§μΌλ‘ root ν΄λμ system.properries νμΌμ μΆκ°νκ³
java.runtime.version=17 μ μ λ€ μ μ₯νλ€. KoyebμΌλ‘ λ°°ν¬ν λ μλ° λ²μ μ λͺ
μνκΈ° μν¨.

β
Spring Initializr μ€μ
Starting-Spring-boot-web-server
β
κΈ°λ³Έ ꡬ쑰 μμ½
src/main/javaμλ λΉμ¦λμ€ λ‘μ§μ΄, resourcesμλ μ€μ νμΌμ΄, test/javaμλ ν
μ€νΈ μ½λκ° μμΉν©λλ€. νλ‘μ νΈ λ£¨νΈμλ λΉλ λꡬ μ€μ νμΌμ΄ μμ΅λλ€.
π μ€νλ§ λΆνΈ νκ²½ κ΅¬μ± μμ½
| νλͺ© | μ€λͺ |
|---|---|
| IDE μ€μΉ | IntelliJ IDEA (Community λλ Ultimate λ²μ ) |
| JDK μ€μΉ λ° νμΈ | Java 17 λλ 21 μ€μΉ, java -version λͺ λ Ήμ΄λ‘ νμΈ |
| νλ‘μ νΈ μμ± λ°©λ² | IntelliJμμ Spring Initializr μ¬μ© |
| μ£Όμ λλ ν 리 ꡬ쑰 | src/main/java, resources, test/java, build.gradle/pom.xml |
| μ€ν νμΈ λ°©λ² | Main ν΄λμ€ μ€ν β "Started ...Application" λ‘κ·Έ νμΈ |
| λν μ λ Έν μ΄μ | @SpringBootApplication β μ€ν μ§μ μ ν΄λμ€μ μ¬μ© |
β
Koyebμ κΉνλΈμ μ°λνμ¬ λ ν¬μ§ν 리λ₯Ό μλμΌλ‘ λ°°ν¬ν΄μ€λ€.
λ¨Όμ μΈν
리μ μ΄ μ½λλ₯Ό κΉνλΈμ pushν΄λλ€.
β
νμκ°μ
νκΈ° or λ‘κ·ΈμΈνκΈ°
νμκ°μ
μ κΉνλΈ μμ΄λλ‘ νλ€(continue with github)
β
create service -> web service -> github ν΄λ¦
첫 λ‘κ·ΈμΈμ΄λΌλ©΄ github λ‘κ·ΈμΈ μ°½μ΄ λ¨λλ° λμΆ© λ€ okνκ³ λμ΄κ°λ©΄ λλ€..
β
Create a new service μμ μνλ κΉ λ νμ§ν 리λ₯Ό μ ννλ€.

β
CPU Ecoμλ λ¬΄λ£ μνμ΄ μλ€. λ μ΄ν΄μκ° μ§§μ κ²μΌλ‘ μ ννλ€.

β
Exposed ports λΆλΆμμ 8000 -> 8080 λ°κΎΌ λ€ deploy.

β
deployκ° μλ£λλ©΄ spring λ§ν¬κ° μ½μμ λ¬λ€.
