java项目中添加邮件发送功能(使用apache commons mail开源项目)

8 篇文章 0 订阅

在java项目中添加邮件发送功能 先下载jar包添加到项目中

apache commons mail开源项目JAR下载

代码示例:

package com.util.mail;

import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.MultiPartEmail;
import org.apache.commons.mail.SimpleEmail;

/**
 * 使用apache commons mail开源项目发送邮件示例
 * http://commons.apache.org/proper/commons-email/
 * 
 * @author
 */
public class SendMail {

	private static final String HOSTNAME = "smtp.qq.com";
	private static final String POP_USERNAME = "83333333@qq.com";
	private static final String USERNAME = "zjx88ba"; // 个人姓名
	private static final String POP_PASSWORD = "123456";
	private static final String CODING = "UTF-8";

	public static void main(String[] args) {

	}

	/**
	 * 
	 * @Title: simpleEmail
	 * @Description: TODO
	 * @param @param toEmail :收件人地址
	 * @param @param subject :主题
	 * @param @param msg :内容
	 * @return void
	 * @throws
	 */
	public static void simpleEmail(String toEmail, String subject, String msg) {
		SimpleEmail email = new SimpleEmail();
		email.setHostName(HOSTNAME);
		email.setAuthentication(POP_USERNAME, POP_PASSWORD);// 邮件服务器验证:用户名/密码
		email.setCharset(CODING);// 必须放在前面,否则乱码
		try {
			email.addTo(toEmail);
			email.setFrom(POP_USERNAME, USERNAME);
			email.setSubject(subject);
			email.setMsg(msg);
			email.send();
		} catch (EmailException e) {
			e.printStackTrace();
		}
	}

	/**
	 * 
	 * @Title: multiPartEmail
	 * @Description: TODO
	 * @param @param toEmail :收件人地址
	 * @param @param subject :主题
	 * @param @param msg :内容
	 * @param @param filePath :附件路径
	 * @param @param fileName :附件名
	 * @return void
	 * @throws
	 */
	public static void multiPartEmail(String toEmail, String subject,
			String msg, String filePath, String fileName) {
		MultiPartEmail email = new MultiPartEmail();
		email.setHostName(HOSTNAME);
		email.setAuthentication(POP_USERNAME, POP_PASSWORD);
		email.setCharset(CODING);
		try {
			email.addTo(toEmail);
			email.setFrom(POP_USERNAME, USERNAME);
			email.setSubject(subject);
			email.setMsg(msg);
			EmailAttachment attachment = new EmailAttachment();
			attachment.setPath("d:/student_templet.xls");// 本地文件
			// attachment.setURL(new URL("filePath"));//远程文件filePath
			attachment.setDisposition(EmailAttachment.ATTACHMENT);
			attachment.setDescription("答辩学生名单");
			attachment.setName("student_templet.xls");// fileName

			email.attach(attachment);
			email.send();
		} catch (EmailException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	/**
	 * 
	 * @Title: htmlEmail
	 * @Description: TODO
	 * @param @param toEmail :收件人地址
	 * @param @param subject :主题
	 * @param @param msg :内容
	 * @return void
	 * @throws
	 */
	public static void htmlEmail(String toEmail, String subject, String msg) {

		HtmlEmail email = new HtmlEmail();
		email.setHostName(HOSTNAME);
		email.setAuthentication(POP_USERNAME, POP_PASSWORD);
		email.setCharset(CODING);
		try {
			email.addTo(toEmail);
			email.setFrom(POP_USERNAME, USERNAME);
			email.setSubject(subject);
			email.setHtmlMsg("<b>关于论文最后答辩时间</b><br/><div>2013-05-18</div>");
			// email.setHtmlMsg(msg);
			email.send();
		} catch (EmailException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}


 java开源WebMail系统

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
package com.email.send; import java.util.Properties; import javax.activation.DataHandler; import javax.activation.FileDataSource; import javax.mail.Message; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; public class EmailSender { String protocol ="smtp"; //服务器 String from="*******@qq.com";//寄信人,这里可以改为你的邮箱地址 String to="*******@qq.com";//收信人,改为你要寄给那人的邮箱地址 建议可以用自己的QQ邮箱试试 String subject="Java发送邮件测试!";//邮件主题 String body="<a href=http://www.qq.com>qq.com" + "</a><br><img src=\"cid:8.jpg\">";//邮件内容 这是一个HTTP网页类的邮件内容 public static void main(String []args)throws Exception{ String server ="smtp.qq.com";//QQ邮箱的服务器,例如新浪邮箱或者其他服务器可以自己去查,这里用QQ邮箱为例 String user="******@qq.com";//登录邮箱的用户,不如说你用QQ邮箱,那就写你登录QQ邮箱的帐号 String pass="*******";//登录密码 EmailSender sender=new EmailSender(); Session session= sender.createSession(); MimeMessage message=sender.createMessage(session); System.out.println("正在发送邮件..."); Transport transport=session.getTransport(); transport.connect(server,user,pass); transport.sendMessage(message,message.getRecipients(Message.RecipientType.TO)); transport.close(); System.out.println("发送成功!!!"); } public Session createSession(){ Properties props=new Properties(); props.setProperty("mail.transport.protocol", protocol); props.setProperty("mail.smtp.auth","true"); Session session=Session.getInstance(props); // session.setDebug(true); return session; } public MimeMessage createMessage(Session session)throws Exception{ MimeMessage message=new MimeMessage(session); message.setFrom(new InternetAddress(from)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to)); message.setSubject(subject); MimeMultipart multipart=new MimeMultipart("related"); MimeBodyPart bodyPart=new MimeBodyPart(); bodyPart.setContent(body,"text/html;charset=gb2312"); multipart.addBodyPart(bodyPart); //发附件 MimeBodyPart gifBodyPart=new MimeBodyPart(); FileDataSource fds=new FileDataSource("f:\\音乐.MP3");//F盘下的 音乐.MP3 文件。这里看个人情况 gifBodyPart.setDataHandler(new DataHandler(fds)); gifBodyPart.setContentID("音乐.MP3"); multipart.addBodyPart(gifBodyPart); message.setContent(multipart); message.saveChanges(); return message; } } //PS:把java发送邮件的导入的JAR包上传了,解压后导入你的项目里就可
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值