JavaMail은 Java에서 이메일을 송수신하는 데 사용되는 라이브러리입니다. 이번 글에서는 Javamail을 사용하여 IMAP 서버에 연결하는 방법을 알아보겠습니다.
의존성 추가하기
먼저 프로젝트의 의존성에 JavaMail 라이브러리를 추가해야 합니다. Maven을 사용한다면 pom.xml
파일에 다음과 같이 의존성을 추가해주세요.
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
Gradle을 사용한다면 build.gradle
파일에 다음과 같이 의존성을 추가해주세요.
compile 'com.sun.mail:javax.mail:1.6.2'
의존성을 추가했다면, Javamail을 사용하여 IMAP 서버에 연결해볼 수 있습니다.
IMAP 서버에 연결하기
먼저, javax.mail 패키지의 Session
클래스를 사용하여 세션을 생성합니다. 이 세션은 애플리케이션과 메일 서버 간의 통신을 담당합니다.
import javax.mail.*;
import java.util.Properties;
public class ImapExample {
public static void main(String[] args) throws Exception {
// IMAP 서버 연결 정보 설정
Properties properties = new Properties();
properties.setProperty("mail.store.protocol", "imap");
properties.setProperty("mail.imap.host", "imap.example.com");
properties.setProperty("mail.imap.port", "993");
properties.setProperty("mail.imap.ssl.enable", "true");
// 세션 생성
Session session = Session.getInstance(properties);
// IMAP Store 연결
Store store = session.getStore("imap");
store.connect("username", "password");
// 세션 및 Store 닫기
store.close();
}
}
위의 코드에서 mail.imap.host
와 mail.imap.port
는 접속할 IMAP 서버의 호스트와 포트 정보를 설정합니다. mail.imap.ssl.enable
은 SSL을 사용하여 암호화된 연결을 설정하는 속성입니다.
store.connect("username", "password");
메서드를 사용하여 실제로 IMAP 서버에 연결할 수 있습니다. 여기서 username
과 password
는 해당 IMAP 서버의 사용자 계정 정보입니다.
연결을 성공적으로 수행한 후에는 store.close();
메서드를 호출하여 세션과 스토어를 닫아야 합니다.
이제 Javamail을 사용하여 IMAP 서버에 연결하는 방법을 알게 되었습니다. 이를 기반으로 이메일 수신, 읽기, 삭제 등 다양한 작업을 수행할 수 있습니다.