用自各儿的邮件服务器发送邮件到外网-转-已测试

用自己的邮件服务器发送邮件到外网-转-已测试
   
import java.util.Properties;     
import javax.activation.DataHandler;     
import javax.activation.DataSource;     
import javax.activation.FileDataSource;     
import javax.mail.Message;     
import javax.mail.MessagingException;     
import javax.mail.Session;     
import javax.mail.Transport;     
import javax.mail.URLName;     
import javax.mail.internet.AddressException;     
import javax.mail.internet.InternetAddress;     
import javax.mail.internet.MimeBodyPart;     
import javax.mail.internet.MimeMessage;     
import javax.mail.internet.MimeMultipart;     
    
    
public class SendMail {     
    public SendMail() {     
        // TODO Auto-generated constructor stub     
    }     
    public static void main(String[] args) {     
        // 初始化信息     
        String sender = "yangtest";     
        String password = "yangtest";     
        String smtpServer = "yangtest.com";      
        String from = "yangtest@yangtest.com";
        String recipient = "yangtest@126.com"; 
        String subject = "测试邮件主题";     
        String fileAttachment = "";   //附件     
        String content = "测试邮件内容";     
        // 配置服务器属性     
        Properties proper = new Properties();     
        proper.put("mail.smtp.host", smtpServer); // smtp服务器     
        proper.put("mail.smtp.auth", "true"); // 是否smtp认证     
        proper.put("mail.smtp.port", "25"); // 设置smtp端口     
        proper.put("mail.transport.protocol", "smtp"); // 发邮件协议     
        proper.put("mail.store.protocol", "pop3"); // 收邮件协议     
        // 配置邮件接收地址     
        InternetAddress[] receiveAddress = new InternetAddress[1];     
        try {     
            receiveAddress[0] = new InternetAddress(recipient);     
        } catch (AddressException e) {     
            // TODO Auto-generated catch block     
            e.printStackTrace();     
        }     
        // smtp认证,获取Session     
        SmtpAuth sa = new SmtpAuth();     
        sa.setUserinfo(sender, password);     
        Session session = Session.getInstance(proper, sa);     
        session.setPasswordAuthentication(new URLName(smtpServer), sa     
                .getPasswordAuthentication());     
        // 构建邮件体     
        MimeMessage sendMess = new MimeMessage(session);     
        MimeBodyPart mbp = new MimeBodyPart();     
        MimeMultipart mmp = new MimeMultipart();     
        try {     
            // 邮件文本内容     
            mbp.setContent(content, "text/plain; charset=GBK");     
            mmp.addBodyPart(mbp);     
            // 附件处理     
            if(fileAttachment!=null&&fileAttachment!=""){     
                DataSource source = new FileDataSource(fileAttachment);     
                String name = source.getName();     
                mbp = new MimeBodyPart();     
                mbp.setDataHandler(new DataHandler(source));     
                mbp.setFileName(name);     
                mmp.addBodyPart(mbp);     
            }     
            // 邮件整体     
            sendMess.setSubject(subject);     
            sendMess.setContent(mmp);     
            // 发送邮件     
            sendMess.setFrom(new InternetAddress(from));     
            sendMess.setRecipients(Message.RecipientType.TO, receiveAddress);     
            Transport.send(sendMess);     
            System.out.println("发送成功");     
        } catch (MessagingException ex) {     
            ex.printStackTrace();     
        }     
    }     
}