首先要加入mail.jar包

import java.io.UnsupportedEncodingException;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
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;
import javax.mail.internet.MimeUtility; public class SendMail {
/**
* 发送邮件
* @param from 发送方地址
* @param frompwd 发送方邮件密码
* @param to 发送的目的地
* @param sub 邮件主题
* @param attr 附件
* @param content 内容
* @throws MessagingException
* @throws UnsupportedEncodingException
*/
public void sendTextMail(String from, String frompwd, String to, String sub, String attr,String content)
throws MessagingException, UnsupportedEncodingException {
Properties props = new Properties();
props.setProperty("mail.smtp.auth", "true");// 设置访问smtp服务器需要认证
props.setProperty("mail.transport.protocol", "smtp"); // 设置访问服务器的协议 Session session = Session.getDefaultInstance(props);
session.setDebug(true); // 打开debug功能 Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(from)); // 设置发件人,163邮箱要求发件人与登录用户必须一致(必填),其它邮箱不了解
// msg.setText(content); // 设置邮件内容
msg.setSubject(sub); // 设置邮件主题
MimeBodyPart mbp = new MimeBodyPart();
// 是否有附件
if (attr != null && attr != "") {
FileDataSource fds = new FileDataSource(attr); mbp.setDataHandler(new DataHandler(fds));
mbp.setFileName(MimeUtility.encodeText(fds.getName()));
}
mbp.setContent(content.toString(), "text/html;charset=gb2312"); // 设置发送内容
Multipart mp = new MimeMultipart();
mp.addBodyPart(mbp);
msg.setContent(mp); //发送附件
Transport trans = session.getTransport();
trans.connect("smtp.163.com", 25, from, frompwd); // 连接邮箱smtp服务器,25为默认端口
trans.sendMessage(msg, new Address[] { new InternetAddress(to) }); // 发送邮件
trans.close(); // 关闭连接
}
}

  这里只能发送163邮件。

本文参考博客:http://www.2cto.com/kf/201402/276546.html

使用java发送邮件的更多相关文章

  1. Java发送邮件初窥

    一.背景 最近朋友的公司有用到这个功能,之前对这一块也不是很熟悉,就和他一起解决出现的异常的同时,也初窥一下使用Apache Common Email组件进行邮件发送. 二.Java发送邮件的注意事项 ...

  2. Java发送邮件,所遇到的常见需求

    明天要做关于发送邮件的接口,虽然我之前已用Java Mail做过许多关于邮件的发送.但同事说有点难点,虽我还不知难点在哪,还是要复习下.凡事预则立,不预则废嘛~ 所需的包: Java Mail : 目 ...

  3. 用java发送邮件(黄海已测试通过)

    /** * java发送带附件的邮件 * 周枫 * 2013.8.10 */ package com.dsideal.Util; import javax.mail.*; import javax.m ...

  4. Java发送邮件(带附件)

    实现java发送邮件的过程大体有以下几步: 准备一个properties文件,该文件中存放SMTP服务器地址等参数. 利用properties创建一个Session对象 利用Session创建Mess ...

  5. 用Java发送邮件

    要用Java发送邮件,除过JDK本身的jar包之外,还需要两个额外的jar包:JavaMail和JAF.当然,如果你使用的JavaEE的JDK,那就不用单独去网上下载了,因为JavaEE的JDK中已经 ...

  6. Java发送邮件时标题和发件人乱码

    最近碰到一个问题,Java发送邮件时,查看邮箱结果,发件人及邮件标题正文全部乱码 通过翻阅资料,原因及解决方法如下: // Set Subject: 头字段 message.setSubject(Mi ...

  7. Java - 31 Java 发送邮件

    Java 发送邮件 使用Java应用程序发送E-mail十分简单,但是首先你应该在你的机器上安装JavaMail API 和Java Activation Framework (JAF) . 你可以在 ...

  8. Java-Runoob-高级教程:Java 发送邮件

    ylbtech-Java-Runoob-高级教程:Java 发送邮件 1.返回顶部 1. Java 发送邮件 使用Java应用程序发送 E-mail 十分简单,但是首先你应该在你的机器上安装 Java ...

  9. Java发送邮件--web.xml配置,Java代码配置

    前言:我目前总结的使用java发送邮件的方式有两种,分别是在spring框架xml配置文件使用bean标签,另一种方法是把发送功能封装成一个对象,废话不多说上代码, 边看代码边讲解,希望对需要的人能有 ...

  10. Java发送邮件示例

    利用Java发送邮件示例: 1.发送QQ邮件 import java.util.Properties; import javax.mail.Message; import javax.mail.Mes ...

随机推荐

  1. swift_Class类的继承

    //: Playground - noun: a place where people can play var str = "Hello, playground" //***** ...

  2. ActiveReports最终报表设计器本地化方法介绍

    ActiveReports UI界面中的所有字符信息.错误提示信息.以及一些logo.图像资源,都能够通过运行batch文件来本地化.本文主要介绍资源本地化的具体步骤: 1. 资源目录 所有可本地化的 ...

  3. Best Time to Buy and Sell Stock III [LeetCode]

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...

  4. 张艾迪:全面开放“A"计划

    全面开放A计划.放飞梦想.放飞世界 AOOOiA.global将全面开启"A"计划.与世界分享We Share .与世界一同探索求知.全面开放"A"计划:拉近世 ...

  5. Winform 文本框多线程赋值

    delegate void SetTextCallback(string text); private void showClientMsg(string text) { // InvokeRequi ...

  6. java 复制字串算法

    public class Copy { public static void copy(char[] s, char[] t){ int i=0; for(i=0; i<s.length; i+ ...

  7. Python:循环语句

    while 在某种条件下,执行某段程序 >>> w=0 >>> while w<5: ... print 'w :',w ... w=w+1 ... w : ...

  8. ASP.NET POST XML JSON数据,发送与接收

    接收端通过Request.InputStream读取:byte[] byts = new byte[Request.InputStream.Length];Request.InputStream.Re ...

  9. 前端面试题 之 JavaScript

    昨天我们一起分享了关于html和css的面试题<前端面试题之Html和CSS>,今天我们来分享关于javascript有关的面试题.我面试的时候最害怕面试官问我js了,因为我真心不擅长这个 ...

  10. jquery 巧用json传参

    JavaScript代码,巧用JSON传参数function AddComment(content) { var comment = {}; comment.threadId = $("#s ...