您的位置:首页 > 其它

找回密码 之发送邮件 接口

2014-06-02 00:54 393 查看
package com.friendcom.dongzuo.mail;

import org.springframework.stereotype.Service;

import com.friendcom.core.util.LogicUtils;

@Service
public class DZMaillService implements IDZMailService{

private String host;
private int port;
private String loginName;
private String pwd;
private String from;
private boolean vali;
private String outtime;
private MailSenderInfo sender;

public String getOuttime() {
return outtime;
}
public void setOuttime(String outtime) {
this.outtime = outtime;
}
public String getHost() {
return host;
}
public void setHost(String host) {
this.host = host;
}
public int getPort() {
return port;
}
public void setPort(int port) {
this.port = port;
}
public String getLoginName() {
return loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public boolean isVali() {
return vali;
}
public void setVali(boolean vali) {
this.vali = vali;
}
public void init(){

}
/*private void init(String host,int port,String loginName, String pwd,String from,boolean vali) {
this.host=host;
this.port=port;
this.loginName=loginName;
this.pwd=pwd;
this.from=from;
this.vali=vali;
this.sender=new  MailSenderInfo(host, port, loginName, pwd, from, vali);
}*/
public boolean sendMail(String toAddress,String subject,String content,boolean isHtml)throws Exception{
sender=getSender();
sender.setToAddress(toAddress);
sender.setSubject(subject);
sender.setContent(content);
sender.setHtml(isHtml);
//创建线程操作类
MailThread thread=new MailThread(sender);
//新建线程
Thread sendThread=new Thread(thread);
//执行
sendThread.start();
return true;
}
/*    public boolean sendHtmlMail(String toAddress,String subject,String content)throws Exception{
sender=getSender();
sender.setToAddress(toAddress);
sender.setSubject(subject);
sender.setContent(content);
//这个类主要来发送邮件
SimpleMailSender.sendHtmlMail(sender);
return true;
}*/
public MailSenderInfo getSender() {
if(LogicUtils.isNull(sender)){
sender=new  MailSenderInfo(host, port, loginName, pwd, from,outtime, vali);
}
return sender;
}
public void setSender(MailSenderInfo sender) {
this.sender = sender;
}

}
class MailThread implements Runnable{
private MailSenderInfo sender;

MailThread(MailSenderInfo sender){
this.sender=sender;
}
public MailSenderInfo getSender() {
return sender;
}

public void setSender(MailSenderInfo sender) {
this.sender = sender;
}

@Override
public void run() {
sendMail(sender);
}

public boolean sendMail(MailSenderInfo mail){
if(mail.isHtml()){
SimpleMailSender.sendHtmlMail(mail);
}else{
//这个类主要来发送邮件
SimpleMailSender sms = new SimpleMailSender();
sms.sendTextMail(mail);//发送文体格式
}
return true;
}

}


package com.friendcom.dongzuo.mail;

import java.util.Properties;

public class MailSenderInfo {
// 发送邮件的服务器的IP和端口
private String mailServerHost;

private String mailServerPort;
// 邮件发送者的地址
private String fromAddress;
// 邮件接收者的地址
private String toAddress;
// 登陆邮件发送服务器的用户名和密码
private String userName;

private String password;
// 是否需要身份验证
private boolean validate=true ;
// 邮件主题
private String subject;
// 邮件的文本内容
private String content;
// 邮件附件的文件名
private String[] attachFileNames;
//超时时间
private String outtime;

private boolean isHtml;
/**
* 获得邮件会话属性
*/
public Properties getProperties(){
Properties p = new Properties();
p.put("mail.smtp.host", this.mailServerHost);
p.put("mail.smtp.port", this.mailServerPort);
p.put("mail.smtp.auth", validate ? "true" : "false");
p.setProperty("mail.smtp.timeout", this.outtime);
return p;
}
public MailSenderInfo(){
super();
}
/**
* 构造邮件发送对象
* @param host 服务器IP
* @param port 服务器端口
* @param userName 服务器用户名
* @param password 服务器密码
* @param fromAddress 发送者邮件地址
* @param validate 是否验证用户
*/
public MailSenderInfo(String host,int port,String userName, String password,String fromAddress,String outtime,boolean vali){
this.mailServerHost=host;
this.mailServerPort=port+"";
this.userName=userName;
this.password=password;
this.validate=vali;
this.fromAddress=fromAddress;
this.outtime=outtime;
}

public String getMailServerHost() {
return mailServerHost;
}
public void setMailServerHost(String mailServerHost) {
this.mailServerHost = mailServerHost;
}
public String getMailServerPort() {
return mailServerPort;
}
public void setMailServerPort(String mailServerPort) {
this.mailServerPort = mailServerPort;
}
public boolean isValidate() {
return validate;
}
public void setValidate(boolean validate) {
this.validate = validate;
}
public String[] getAttachFileNames() {
return attachFileNames;
}
public void setAttachFileNames(String[] fileNames) {
this.attachFileNames = fileNames;
}
public String getFromAddress() {
return fromAddress;
}
public void setFromAddress(String fromAddress) {
this.fromAddress = fromAddress;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getToAddress() {
return toAddress;
}
public void setToAddress(String toAddress) {
this.toAddress = toAddress;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getContent() {
return content;
}
public void setContent(String textContent) {
this.content = textContent;
}
public String getOuttime() {
return outtime;
}
public void setOuttime(String outtime) {
this.outtime = outtime;
}
public boolean isHtml() {
return isHtml;
}
public void setHtml(boolean isHtml) {
this.isHtml = isHtml;
}

}
#mail server settings
mail.server.host=smtp.friendcom.com
mail.server.port=25
mail.server.loginName=sdsdsdsd@ddcom.com
mail.server.pwd=lo5555ve
mail.server.from=sdsdsdsd@ddcom.com
mail.server.vali=true
mail.server.outtime=60000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: