您的位置:首页 > 运维架构 > Apache

使用Apache email组件发送邮件实例

2008-01-08 08:59 585 查看
[align=left]1.使用Apache-commons-email发送邮件非常简单,只需要加载三个jar包:commons-email-1.1.jar、mail.jar、activition.jar。[/align]
[align=left] [/align]
[align=left]Commons Email aims to provide a API for sending email. It is built on top of the Java Mail API, which it aims to simplify. [/align]
[align=left]Some of the mail classes that are provided are as follows: [/align]
[align=left]SimpleEmail - This class is used to send basic text based emails. [/align]
[align=left]MultiPartEmail - This class is used to send multipart messages. This allows a text message with attachments either inline or attached. [/align]
[align=left]HtmlEmail - This class is used to send HTML formatted emails. It has all of the capabilities as MultiPartEmail allowing attachments to be easily added. It also supports embedded images. [/align]
[align=left]EmailAttachment - This is a simple container class to allow for easy handling of attachments. It is for use with instances of MultiPartEmail and HtmlEmail. [/align]
2.下面两个经过测试的代码:
//发送简单的文本
[align=left]import org.apache.commons.mail.EmailException;[/align]
[align=left]import org.apache.commons.mail.HtmlEmail;[/align]
[align=left] [/align]
[align=left]publicclass mailSender {[/align]
[align=left] /**[/align]
[align=left] *@测试成功!!![/align]
[align=left] */[/align]
[align=left] publicstaticvoid main(String[] args) {[/align]
[align=left] // 不要使用SimpleEmail,会出现乱码问题[/align]
[align=left] HtmlEmail email = new HtmlEmail();[/align]
[align=left] try{[/align]
[align=left] // 这里是发送服务器的名字[/align]
[align=left] email.setHostName("smtp.sohu.com");[/align]
[align=left] // 编码集的设置[/align]
[align=left] email.setCharset("gbk");[/align]
[align=left] // 收件人的邮箱[/align]
[align=left] email.addTo("pengchua@gmail.com");[/align]
[align=left] // 发送人的邮箱[/align]
[align=left] email.setFrom("ppzhguy@sohu.com", "ppzhguy");[/align]
[align=left] // 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码[/align]
[align=left] email.setAuthentication("ppzhguy","XXXX");[/align]
[align=left] email.setSubject("测试Email");[/align]
[align=left] // 要发送的信息[/align]
[align=left] email.setMsg("测试Email ");[/align]
[align=left] // 发送[/align]
[align=left] email.send();[/align]
[align=left] } catch (EmailException e) {[/align]
[align=left] // TODO Auto-generated catch block[/align]
[align=left] e.printStackTrace();[/align]
[align=left] }[/align]
[align=left] }[/align]
}}
//发送附件:
[align=left]import javax.mail.internet.MimeUtility;[/align]
[align=left]import org.apache.commons.mail.EmailAttachment;[/align]
[align=left]import org.apache.commons.mail.MultiPartEmail;[/align]
[align=left] [/align]
[align=left]publicclass AttachMailSender {[/align]
[align=left] [/align]
[align=left] /**[/align]
[align=left] *@paramargs[/align]
[align=left] *@throwsException[/align]
[align=left] */[/align]
[align=left] publicstaticvoid main(String[] args) throws Exception {[/align]
[align=left] // TODO Auto-generated method stub[/align]
[align=left]// Create the attachment[/align]
[align=left] EmailAttachment attachment = new EmailAttachment();[/align]
[align=left] attachment.setPath("D:/测试.jpg");//指定附件在本地的绝对路径[/align]
[align=left] attachment.setDisposition(EmailAttachment.ATTACHMENT);[/align]
[align=left] attachment.setDescription("Picture of test");//附件描述[/align]
[align=left]// attachment.setName("测试");//附件名称[/align]
[align=left] //如果附件是中文名会在乱码,attachment.setName(MimeUtility.encodeText("测试"));[/align]
[align=left] attachment.setName(MimeUtility.encodeText("测试"));[/align]
[align=left] // Create the email message[/align]
[align=left] MultiPartEmail email = new MultiPartEmail();[/align]
[align=left] email.setHostName("smtp.sohu.com");[/align]
[align=left] // 编码集的设置[/align]
[align=left] email.setCharset("gbk");[/align]
[align=left] // 收件人的邮箱[/align]
[align=left] email.addTo("pengchua@gmail.com");[/align]
[align=left] // 发送人的邮箱[/align]
[align=left] email.setFrom("ppzhguy@sohu.com", "ppzhguy");[/align]
[align=left] // 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码[/align]
[align=left] email.setAuthentication("ppzhguy","XXXXX");[/align]
[align=left] email.setSubject("图片");[/align]
[align=left] email.setMsg("这是你想要的图片!");[/align]
[align=left] [/align]
[align=left] // add the attachment[/align]
[align=left] email.attach(attachment);[/align]
[align=left] [/align]
[align=left] // send the email[/align]
[align=left] email.send();[/align]
[align=left] [/align]
[align=left] }[/align]
[align=left] [/align]
[align=left]}[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: