这两天在做一个邮件发送系统,发现使用javaMail有些麻烦,在open-open上发现了EasySMTPConnection。EasySMTPConnection简单易用而且不需要JavaMail,它是利用来自己的SMTP协议来发送信息.这里记下发送邮件(不含附件)的核心代码:
/**
* 发送邮件的方法
*
* @param serverName
* 邮件服务器,形如"mail.lianchuang.com"
* @param from
* 发件人
* @param to
* 收件人
* @param subject
* 邮件主题
* @param domainName
* 邮件域名,形如"@lianchuang.com"
* @param content
* 邮件内容
*/
public static void sendMail(String serverName, String from, String to,
String subject, String domainName, String content)
{
try
{
EasySMTPConnection smtp = new EasySMTPConnection(serverName);
String[] msgSource =
{
"From: " + from,
"To: " + to,
"Subject: " + subject,
"Date: datumeintragen",
"Content-Type: text/plain; charset=gbk",
"Message-ID: " + new Date().getTime() + "."
+ EasySMTPConnection.class.hashCode() + domainName,
"", content };
smtp.send(msgSource);
}
catch (InstantiationException e)
{
e.printStackTrace();
}
catch (MailProtocolException e)
{
e.printStackTrace();
}
}
若要携带附件发送,需扩展EasySMTPConnection的代码。
/**
* 发送邮件的方法
*
* @param serverName
* 邮件服务器,形如"mail.lianchuang.com"
* @param from
* 发件人
* @param to
* 收件人
* @param subject
* 邮件主题
* @param domainName
* 邮件域名,形如"@lianchuang.com"
* @param content
* 邮件内容
*/
public static void sendMail(String serverName, String from, String to,
String subject, String domainName, String content)
{
try
{
EasySMTPConnection smtp = new EasySMTPConnection(serverName);
String[] msgSource =
{
"From: " + from,
"To: " + to,
"Subject: " + subject,
"Date: datumeintragen",
"Content-Type: text/plain; charset=gbk",
"Message-ID: " + new Date().getTime() + "."
+ EasySMTPConnection.class.hashCode() + domainName,
"", content };
smtp.send(msgSource);
}
catch (InstantiationException e)
{
e.printStackTrace();
}
catch (MailProtocolException e)
{
e.printStackTrace();
}
}
若要携带附件发送,需扩展EasySMTPConnection的代码。