λλ§μ μ΄λ©μΌ ν νλ¦Ώμ μ€λ§νΈνκ² κ΄λ¦¬νκ³ λ°μ‘νλ λ°μ€ν¬ν± μ ν리μΌμ΄μ
λ¨κ΅λνκ΅ λͺ¨λ°μΌμμ€ν 곡νκ³Ό 2νλ μ 곡μ ν μλ°νλ‘κ·Έλλ° Final νλ‘μ νΈ
Smart Template Assistantλ λ°λ³΅μ μΌλ‘ μμ±νλ μ΄λ©μΌ, λ³΄κ³ μ, μ½λ μ€λν« λ±μ ν μ€νΈλ₯Ό ν νλ¦ΏμΌλ‘ ν¨μ¨μ μΌλ‘ κ΄λ¦¬νκΈ° μν΄ κ°λ°λ Java Swing κΈ°λ°μ λ°μ€ν¬ν± μ ν리μΌμ΄μ μ λλ€. λ°λ³΅μ μΈ ν μ€νΈ μμ±μ μλννκ³ , λμ λ³μλ₯Ό μ¬μ©ν΄ κ°μΈνλ λ΄μ©μ μμ½κ² μμ±ν μ μμΌλ©°, Gmail κ³μ κ³Ό μ°λνμ¬ λ°λ‘ μ΄λ©μΌμ λ°μ‘ν μ μλ κΈ°λ₯μ μ 곡ν©λλ€.
μ λ νμ μ΄λ©μΌμ΄λ κ³Όμ μ μΆ μ λΉμ·ν νμμ κΈμ λ°λ³΅ν΄μ μμ±νλ μΌμ΄ λ§μμ΅λλ€. μ΄λ¬ν λΉν¨μ¨μ μ€μ΄κ³ μ, μμ£Ό μ¬μ©νλ 문ꡬλ₯Ό μ μ₯νκ³ μ½κ² κΊΌλ΄ μΈ μ μλ νλ‘κ·Έλ¨μ μ§μ λ§λ€κ³ μΆλ€λ μκ°μμ μ΄ νλ‘μ νΈλ₯Ό μμνκ² λμμ΅λλ€.
λ³Έ νλ‘μ νΈλ₯Ό ν΅ν΄ λ€μκ³Ό κ°μ νμ΅ λͺ©νλ₯Ό λ¬μ±νκ³ μ νμ΅λλ€.
- Java Swingμ μ΄μ©ν GUI νλ‘κ·Έλλ° μλ κ°ν
- νμΌ μ μΆλ ₯μ ν΅ν λ°μ΄ν° μμμ± μ²λ¦¬ λ₯λ ₯ μ΅λ
- κ°μ²΄μ§ν₯ νλ‘κ·Έλλ°(OOP) μμΉμ κΈ°λ°ν 체κ³μ μΈ νλ‘κ·Έλ¨ μ€κ³
- μΈλΆ λΌμ΄λΈλ¬λ¦¬(Jakarta Mail) μ°λ λ° νμ© κ²½ν
- βοΈ ν νλ¦Ώ κ΄λ¦¬ (CRUD): λλ§μ ν νλ¦Ώμ μμ λ‘κ² μμ±, μμ , μμ ν μ μμ΅λλ€.
- π μ€μκ° κ²μ λ° νν°λ§: μ λͺ©, λ΄μ©, μΉ΄ν κ³ λ¦¬, μ¦κ²¨μ°ΎκΈ° μ¬λΆλ‘ μνλ ν νλ¦Ώμ λΉ λ₯΄κ² μ°Ύμ μ μμ΅λλ€.
- π λμ λ³μ μΉν:
{name},{date}μ κ°μ λ³μλ₯Ό ν νλ¦Ώμ ν¬ν¨μν€κ³ , 미리보기μμ μ€μ κ°μΌλ‘ μ½κ² μΉνν μ μμ΅λλ€. - β μ¦κ²¨μ°ΎκΈ°: μμ£Ό μ¬μ©νλ ν νλ¦Ώμ μ¦κ²¨μ°ΎκΈ°λ‘ λ±λ‘νμ¬ λ°λ‘ λͺ¨μλ³Ό μ μμ΅λλ€.
- βοΈ Gmail μ°λ μ΄λ©μΌ λ°μ‘: μμ±λ ν νλ¦Ώμ Gmail κ³μ μ ν΅ν΄ μ¦μ λ°μ‘ν μ μμ΅λλ€. (2λ¨κ³ μΈμ¦ λ° μ± λΉλ°λ²νΈ νμ)
- πΎ λ°μ΄ν° μμμ±: μμ±ν ν
νλ¦Ώκ³Ό μ΄λ©μΌ κ³μ μ 보λ νμΌ(
templates.dat,email_credentials.properties)λ‘ μ μ₯λμ΄ νλ‘κ·Έλ¨μ΄ μ’ λ£λμ΄λ μ μ§λ©λλ€.
μ΄ νλ‘μ νΈλ₯Ό λ‘컬 μ»΄ν¨ν°μμ μννκ² μ€ννμκΈ° μν κ°μ΄λμ λλ€.
- JDK (Java Development Kit) 11 μ΄μ: μλ° μ»΄νμΌ λ° μ€ν νκ²½
- Git: μμ€ μ½λ λ€μ΄λ‘λ
κ°μ₯ κ°λ¨νκ³ νμ€ν λ°©λ²μ λλ€.
-
νλ‘μ νΈ ν΄λ‘ ν°λ―Έλ λλ Git Bashλ₯Ό μ΄κ³ μλ λͺ λ Ήμ΄λ₯Ό μ€ννμ¬ νλ‘μ νΈλ₯Ό λ€μ΄λ‘λν©λλ€.
git clone [https://github.com/codeminjun/SETAProject.git](https://github.com/codeminjun/SETAProject.git)
-
νλ‘μ νΈ μ΄κΈ° IntelliJ IDEAλ₯Ό μ€ννκ³
File > Open...λ©λ΄λ₯Ό ν΅ν΄ λ€μ΄λ‘λνSETAProjectν΄λλ₯Ό μ ννμ¬ μ½λλ€. -
λΌμ΄λΈλ¬λ¦¬ μ€μ (κ°μ₯ μ€μ) μ΄λ©μΌ λ°μ‘ κΈ°λ₯μ μν΄
jakarta.mail-1.6.7.jarνμΌμ νλ‘μ νΈ λΌμ΄λΈλ¬λ¦¬λ‘ μ€μ ν΄μΌ ν©λλ€.File > Project Structure...λ©λ΄λ‘ λ€μ΄κ°λλ€. (λ¨μΆν€:Cmd + ;λλCtrl+Alt+Shift+S)- μΌμͺ½ νμμ
Modulesλ₯Ό μ νν©λλ€. - μ€μ ν¨λμμ
Dependenciesνμ μ νν©λλ€. +μμ΄μ½μ ν΄λ¦νκ³JARs or directories...λ₯Ό μ νν©λλ€.- νλ‘μ νΈ ν΄λ λ΄μ
lib/jakarta.mail-1.6.7.jarνμΌμ μ°Ύμ μ ννκ³OKλ₯Ό λλ¦ λλ€. OKλ₯Ό λλ¬ μ€μ μ μλ£ν©λλ€.
-
νλ‘κ·Έλ¨ μ€ν μΌμͺ½ νλ‘μ νΈ νμκΈ°μμ
JAVA_SETA/src/Main.javaνμΌμ μ°Ύμ μ°ν΄λ¦ν ν,Run 'Main.main()'μ μ ννμ¬ νλ‘κ·Έλ¨μ μ€νν©λλ€.
-
νλ‘μ νΈ ν΄λ‘ : λ°©λ² 1κ³Ό λμΌνκ² νλ‘μ νΈλ₯Ό λ€μ΄λ‘λν©λλ€.
-
λλ ν 리 μ΄λ: ν°λ―Έλμμ νλ‘μ νΈ ν΄λλ‘ μ΄λν©λλ€.
cd SETAProject -
μ»΄νμΌ μλ λͺ λ Ήμ΄λ₯Ό μ€ννμ¬ μμ€ μ½λλ₯Ό μ»΄νμΌν©λλ€.
outν΄λκ° μμ±λ©λλ€. (macOS/Linux κΈ°μ€, Windowsλ:λ₯Ό;λ‘ λ³κ²½)javac -cp "lib/jakarta.mail-1.6.7.jar" -d out JAVA_SETA/src/**/*.java
-
μ€ν μλ λͺ λ Ήμ΄λ‘ νλ‘κ·Έλ¨μ μ€νν©λλ€. (macOS/Linux κΈ°μ€, Windowsλ
:λ₯Ό;λ‘ λ³κ²½)java -cp "out:lib/jakarta.mail-1.6.7.jar" Main
μ μ₯λ λͺ¨λ ν
νλ¦Ώκ³Ό μ€μ μ μ§μ°κ³ μΆμ κ²½μ°, μλμ μΈμ(--reset)μ ν¨κ» νλ‘κ·Έλ¨μ μ€νν μ μμ΅λλ€.
java -cp "out:lib/jakarta.mail-1.6.7.jar" Main --reset