5 回答
TA贡献1864条经验 获得超6个赞
mail.smtp.host=smtp.gmail.com
mail.smtp.socketFactory.port=465
mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
mail.smtp.auth=true
mail.smtp.port=465
mail.transport.protocol=smtp
resource folder-1
TA贡献1827条经验 获得超8个赞
utility class- 2
private Folder folder;
public enum EmailFolder {
INBOX("INBOX"),
SPAM("SPAM");
private String text;
private EmailFolder(String text){
this.text = text;
}
public String getText() {
return text;
}
}
TA贡献2019条经验 获得超9个赞
<dependency>
<groupId>javax.mail</groupId>
<artifactId>javax.mail-api</artifactId>
<version>1.5.5</version>
</dependency>
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>smtp</artifactId>
<version>1.6.0</version>
</dependency>
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.0</version>
</dependency>
TA贡献1858条经验 获得超8个赞
/**
* Uses email.username and email.password properties from the properties file. Reads from Inbox folder of the email application
* @throws MessagingException
*/
public EmailUtils() throws MessagingException {
this(EmailFolder.INBOX);
}
/**
* Uses username and password in properties file to read from a given folder of the email application
* @param emailFolder Folder in email application to interact with
* @throws MessagingException
*/
public EmailUtils(EmailFolder emailFolder) throws MessagingException {
this(getEmailUsernameFromProperties(),
getEmailPasswordFromProperties(),
getEmailServerFromProperties(),
emailFolder);
}
/**
* Connects to email server with credentials provided to read from a given folder of the email application
* @param username Email username (e.g. janedoe@email.com)
* @param password Email password
* @param server Email server (e.g. smtp.email.com)
* @param emailFolder Folder in email application to interact with
*/
public EmailUtils(String username, String password, String server, EmailFolder emailFolder) throws MessagingException {
Properties props = System.getProperties();
try {
props.load(new FileInputStream(new File("resources/email.properties")));
} catch(Exception e) {
e.printStackTrace();
System.exit(-1);
}
Session session = Session.getInstance(props);
Store store = session.getStore("imaps");
store.connect(server, username, password);
folder = store.getFolder(emailFolder.getText());
folder.open(Folder.READ_WRITE);
}
添加回答
举报