JAVA MAIL发送邮件实例

来源:互联网 发布:java反编译怎么用 编辑:程序博客网 时间:2024/04/28 10:23

 项目用到一需求,完成特定任务后需要自动发邮件给客户,看了下javamail比较简单...不啰嗦,你懂的,然后就开始写写个简单的入门,先百度找到

mail.jar ,commons-email-X.X.jar ,activation.jar 这三个jar,放进项目里


先写个简单的mail对象


package com.shadow.mvc.vo;import java.io.Serializable;/** * Mail属性实体 *  * @author shadow *  */@SuppressWarnings("serial")public class Mail implements Serializable {public static final String ENCODEING = "UTF-8";private String host; // 服务器地址private String sender; // 发件人的邮箱private String receiver; // 收件人的邮箱private String name; // 发件人昵称private String username; // 账号private String password; // 密码private String subject; // 主题private String message; // 信息(支持HTML)public String getHost() {return host;}public void setHost(String host) {this.host = host;}public String getSender() {return sender;}public void setSender(String sender) {this.sender = sender;}public String getReceiver() {return receiver;}public void setReceiver(String receiver) {this.receiver = receiver;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getSubject() {return subject;}public void setSubject(String subject) {this.subject = subject;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}}

然后就写个工具类

package com.shadow.extras.util;import org.apache.commons.mail.EmailException;import org.apache.commons.mail.HtmlEmail;import org.apache.log4j.Logger;import com.shadow.mvc.vo.Mail;/** * 邮件发送工具实现类 *  * @author shadow * @create 2013/07/12 */public class MailUtil {protected final Logger logger = Logger.getLogger(getClass());public boolean send(Mail mail) {// 发送emailHtmlEmail email = new HtmlEmail();try {// 这里是SMTP发送服务器的名字:163的如下:"smtp.163.com"email.setHostName(mail.getHost());// 字符编码集的设置email.setCharset(Mail.ENCODEING);// 收件人的邮箱email.addTo(mail.getReceiver());// 发送人的邮箱email.setFrom(mail.getSender(), mail.getName());// 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码email.setAuthentication(mail.getUsername(), mail.getPassword());// 要发送的邮件主题email.setSubject(mail.getSubject());// 要发送的信息,由于使用了HtmlEmail,可以在邮件内容中使用HTML标签email.setMsg(mail.getMessage());// 发送email.send();if (logger.isDebugEnabled()) {logger.debug(mail.getSender() + " 发送邮件到 " + mail.getReceiver());}return true;} catch (EmailException e) {e.printStackTrace();logger.info(mail.getSender() + " 发送邮件到 " + mail.getReceiver()+ " 失败");return false;}}}

最后写个main方法测试下


public static void main(String[] args) {Mail mail = new Mail();mail.setHost("smtp.163.com"); // 设置邮件服务器,如果不用163的,自己找找看相关的mail.setSender("shadowsick@163.com");mail.setReceiver("shadowsick@163.com"); // 接收人mail.setUsername("shadowsick@163.com"); // 登录账号,一般都是和邮箱名一样吧mail.setPassword("xxxxx"); // 发件人邮箱的登录密码mail.setSubject("aaaaaaaaa");mail.setMessage("bbbbbbbbbbbbbbbbb");new MailUtil().send(mail);}

最后看看效果



原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 手机的位置信息开不了怎么办呢 滴滴车主接到乘客返回路程要怎么办 移动换话费积分是发什么短信怎么办 手机店积分换手机被贷款怎么办 心悦俱乐部礼包已过期是怎么办 心悦兑换的东西不是账号绑定怎么办 心悦会员绑定的手机号不用了怎么办 想在京东商城开个网店怎么办呢 京东买了东西收货了不想要了怎么办 京东转卖的商品有问题怎么办 如果衣服下架了然后有退货怎么办 想买二手车可没有懂车的人怎么办 买车的时候异地车牌回家怎么办 天猫下单显示下单人数太多券怎么办 英雄联盟进入游戏后无限崩溃怎么办 打开电视显示百度影棒打不开怎么办 家里路由器网速一会快一会慢怎么办 用快看影视下载电影网速太慢怎么办 苹果手机下载东西网速特别慢怎么办 网上买重庆时时彩输了很多钱怎么办 找不到自己在哪个平台借过钱怎么办 九游账号绑定手机之前绑定的怎么办 九游充过钱的游戏忘了游戏名怎么办 百度网盘密码忘了申诉不了怎么办 手机号被别人注册了百度账号怎么办 快手被盗找回时出来重置密码怎么办 魅族账号密码和密保都忘记了怎么办 vivo账号的密保问题忘了怎么办 oppo账号密保问题忘了怎么办 小米手机刷了机忘了账号密码怎么办 忘了小米账号的密码是多少怎么办 千牛账号在手机上被限制登录怎么办 违规的千牛账号被限制登录了怎么办 苹果id和锁屏密码忘记了怎么办 感应门的编程密码忘记了怎么办 交易猫买的号被找回了怎么办 uc上我的小说看不了怎么办 微信零钱忘记密码没有银行卡怎么办 九游平台冻结提不了现怎么办 计算机考试报名登录名忘记了怎么办 云顶扑克提现怎么提不出来怎么办