转自:http://hi.baidu.com/tianzhiyuanxue/blog/item/fe505a447943668ab3b7dc6a.html
1.用Java发送邮件,我们选用apache给我们提供的commons-email-1.1.jar以及javax 中的dsn.jar imap.jar pop3.jar smtp.jar mail.jar
2.首先要先实例化一个HtmlEmail的对象:HtmlEmail htmlEmail = new HtmlEmail();
3、要设置要用那个服务器 eg: htmlEmail.setHostName("smtp.126.com");
4、设置好服务器后 要选择要用那个邮箱发送邮件,这个邮箱要是用的服务器的邮箱.在这里我们要用126的邮箱。eg: htmlEmail.setFrom(a110900@126.com);
5、设置好这个后,然后要设置你所用邮箱的信息:在这里我们就是要写a110900@126.com 的信息:eg:
htmlEmail.setAuthentication("a110900@126.com","tianzhiyuanxue");(第二个是密码,我这里是假的);
6、现在你要向那个邮箱发送邮件:htmlEmail.addTo(479703466@163.com);
7、设置完这个后,我们要记得设置字符集 htmlEmail.setCharset("utf-8");
8、然后我们设置主题 htmlEmail.setSubject("你好啊");
9、我们再设置要发送的内容: htmlEmail.setMsg("这是一个测试的邮件");
10、最后我们再发送 htmlEmail.send();这样我们就能把邮件发送出去了。
注意:在设置smtp服务器的时候,如果用的是gmail的,那我们要设置他的ssl :htmlEmail.setSSL(true); htmlEmail..setSslSmtpPort("465");
我的完整程序:
package edu.hzu.web;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.log4j.Logger;
public class SendEmail {
public static void main(String[] args) {
Logger logger = Logger.getLogger(SendEmail.class);
logger.info("实例化对象");
@SuppressWarnings("unused")
HtmlEmail htmalEmail = new HtmlEmail();
logger.info("设置smtp");
htmalEmail.setHostName("smtp.126.com");
logger.info("发送到哪里");
try {
htmalEmail.addTo("479703466@163.com");
logger.info("");
htmalEmail.setFrom("a110900@126.com");
htmalEmail.setAuthentication("a110900@126.com", "tiantian");
htmalEmail.setCharset("utf-8");
htmalEmail.setSubject("ni hao");
logger.info("");
htmalEmail.setMsg("heiheiheiheihieheihei");
logger.info("开始");
htmalEmail.send();
logger.info("结束");
} catch (EmailException e) {
logger.error("失败");
}
}
}