javamail 发送邮件的实例代码分享

2014-10-15  来源:本站原创  分类:Java  人气:4 

今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题。为了以后使用方便,自己写了段代码,打成jar包,以方便以后使用

注意:要先导入javamail的mail.jar包
以下三段代码是我的全部代码,朋友们如果想用,直接复制即可。
第一个类:MailSenderInfo.java

package com.util.mail;
import java.util.Properties;
/**
 * 发送邮件需要使用的基本信息
 */
public class MailSenderInfo {
    //发送邮件的服务器的IP和端口
    private String mailServerHost;
    private String mailServerPort = "25";
    //邮件发送者的地址
    private String fromAddress;
    //邮件接收者的地址
    private String toAddress;
    //登录邮件发送服务器的用户名和密码
    private String userName;
    private String password;
    //是否需要身份验证
    private boolean validate = false;
    //邮件主题
    private String subject;
    //邮件的文本内容
    private String content;
    //邮件附件的文件名
    private String[] attachFileNames;
    /**
     * 获得邮件会话属性
     */
    public Properties getProperties() {
        Properties p = new Properties();
        p.put("mail.smtp.host", this.mailServerHost);
        p.put("mail.smtp.port", this.mailServerHost);
        p.put("mail.smtp.auth", validate ? "true" : "false");
        return p;
    }
    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[] attachFileNames) {
        this.attachFileNames = attachFileNames;
    }
    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 content) {
        this.content = content;
    }
}

第二个类:SimpleMailSender.java

[email protected]"); mailInfo.setPassword("test"); mailInfo.setFromAddress("[email protected]"); mailInfo.setToAddress("[email protected]"); mailInfo.setSubject("设置邮箱标题 如http://www.guihua.org 中国桂花网"); mailInfo.setContent("设置邮箱内容 如http://www.guihua.org 中国桂花网 是中国最大桂花网站=="); //这个类主要来发送邮件 SimpleMailSender sms = new SimpleMailSender(); sms.sendTextMail(mailInfo); sms.sendHtmlMail(mailInfo); } }

最后,给出朋友们几个注意的地方:
1、使用此代码你可以完成你的javamail的邮件发送功能。三个类缺一不可。
2、这三个类我打包是用的com.util.mail包,如果不喜欢,你可以自己改,但三个类文件必须在同一个包中
3、不要使用你刚刚注册过的邮箱在程序中发邮件,如果你的163邮箱是刚注册不久,那你就不要使用“smtp.163.com”。因为你发不出去。刚注册的邮箱是不会给你这种权限的,也就是你不能通过验证。要使用你经常用的邮箱,而且时间比较长的。
4、另一个问题就是mailInfo.setMailServerHost("smtp.163.com");与mailInfo.setFromAddress("[email protected]");这两句话。即如果你使用163smtp服务器,那么发送邮件地址就必须用163的邮箱,如果不的话,是不会发送成功的。
5、关于javamail验证错误的问题,网上的解释有很多,但我看见的只有一个。就是我的第三个类。你只要复制全了代码,我想是不会有问题的。

相关文章
  • javamail 发送邮件的实例代码分享 2014-10-15

    今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题.为了以后使用方便,自己写了段代码,打成jar包,以方便以后使用 注意:要先导入javamail的mail.jar包. 以下三段代码是我的全部代码,朋友们如果想用,直接复制即可. 第一个类:MailSenderInfo.java package com.util.mail; import java.util.Properties; /** * 发送邮件需要使用的基本信息 */ public class MailSen

  • java 发送邮件的实例代码(可移植) 2014-07-10

    java 发送邮件的实例代码(可移植),需要的朋友可以参考一下 以一个web项目为例,代码是可以移植的 首先要导入mail.jar包,然后创建自己的类 1:HTMLSender类 package com.txq.mail; import java.util.Properties; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.NoSuchProviderException; i

  • 一个典型的PHP分页实例代码分享 2014-09-26

    一个典型的PHP分页实例代码分享,学习php的朋友肯定用得到,主要是了解思路. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <hea

  • cpu时钟预取实例代码分享 2015-01-25

    cpu时钟预取实例代码分享,大家参考使用吧 测试下预取的效果,利用CPU始终查看效果.根据实验发现,预取地址在地址使用之前的十行左右代码处效果比较好! #include <stdio.h> #define MAX_LEN 1000000 static inline void prefetchnta(void *addr) //预取部分 { __asm__("movl %0, %%eax"::"a"(addr)); __asm__(".byte

  • C#.NET发送邮件的实例代码 2015-04-26

    这篇文章介绍了C#.NET发送邮件的实例代码,有需要的朋友可以参考一下,希望对你有所帮助 using System; using System.Collections.Generic; using System.Text; using System.Net.Mail; using System.Net; namespace MyQuery.Utils { /// <summary> /// 封装邮件处理 /// by 贾世义 2011-6-3 /// </summary> publ

  • 5种PHP创建数组的实例代码分享 2013-11-21

    在本文将数组的各种创建方式用PHP实例代码的方式分享给大家,感兴趣的朋友可以了解下 看这篇文章之前相信大家都已经看过PHP中文手册关于数组这一节的讲解了,怎么样呢,看懂了多少?至少我第一次阅读文档时是一头雾水,也许是因为在翻译的不够通俗易懂吧^_^!!这里UncleToo根据自己的经验,将数组的各种创建方式用PHP实例代码的方式分享给大家,希望对大家有些帮助(当然,PHP文档还是要多看的) 1.使用array()创建数组 array()创建数组是我们在PHP开发过程中最常用到的一种方式,准确来说

  • JavaMail 发送邮件的实例 2014-08-16

    JavaMail是提供给开发者处理电子邮件相关的编程接口.它是Sun发布的用来处理email的API.今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题.为了以后使用方便,自己写了段代码,打成jar包,以方便以后使用.呵呵 以下三段代码是我的全部代码,朋友们如果想用,直接复制即可. 第一个类:MailSenderInfo.java /** * 发送邮件需要使用的基本信息 */ import java.util.Properties; public class Mai

  • javascript修改表格背景色实例代码分享 2013-12-27

    这篇文章主要介绍了javascript修改表格背景色实例,代码简单,大家参考使用吧 <html> <script> //点击当前选中行的时候设置当前行的颜色,同时恢复除当前行外的行的颜色及鼠标事件 function selectRow(target) { var sTable = document.getElementById("ServiceListTable") for(var i=1;i<sTable.rows.length;i++) //遍历除第一

  • python发送邮件的实例代码(支持html.图片.附件) 2014-06-29

    python发送邮件的一些例子,有需要的朋友可以参考下 第一段代码: #!/usr/bin/python # -*- coding: utf-8 -*- import email import mimetypes from email.MIMEMultipart import MIMEMultipart from email.MIMEText import MIMEText from email.MIMEImage import MIMEImage import smtplib def send

  • c#调用qq邮箱smtp发送邮件修改版代码分享 2014-01-10

    c#调用qq邮箱发送邮件的方法,网上找到的有错误,这里修改了一下提供给大家使用 try { MailMessage mm = new MailMessage(); MailAddress Fromma = new MailAddress("[email protected]"); MailAddress Toma = new MailAddress("[email protected]", null); mm.From = Fromma; //收件人 mm.To.A

  • .net socket客户端实例代码分享 2014-09-02

    这篇文章主要介绍了.net写的socket客户端,下面有使用方法,大家参考使用吧 客户端代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Net; using System.Threading; using System.Net.Sockets; namespace W.Common { public cl

  • js实现弹窗插件功能实例代码分享 2015-03-31

    这篇文章主要介绍了 目前测试下:支持IE6+ 火狐 谷歌游览器等. 先来看看此组件的基本配置项:如下: this.config = { targetCls : '.clickElem', // 点击元素 title: '我是龙恩', // 窗口标题 content : 'text:<p style="width:100px;height:100px">我是龙</p>', //content : 'img:http://www.baidu.com/a.jpg',

  • python聊天程序实例代码分享 2015-04-20

    这篇文章主要介绍了用python写的聊天程序,开两个线程,即是客户端,也是服务器,大家可以参考使用 代码简单,直接看代码吧: import socket import threading import re #import Tkinter def ser(): s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.bind(('',33333)) s.listen(1) conn,addr=s.accept() while True: prin

  • java计划任务调度框架quartz结合spring实现调度的配置实例代码分享 2014-08-21

    点击链接加入群[JavaEE(SSH+IntelliJIDE+Maven)]:http://jq.qq.com/?_wv=1027&k=L2rbHv 一:quartz简介 OpenSymphony 的Quartz提供了一个比较完美的任务调度解决方案. Quartz 是个开源的作业调度框架,定时调度器,为在 Java 应用程序中进行作业调度提供了简单却强大的机制. Quartz中有两个基本概念:作业和触发器.作业是能够调度的可执行任务,触发器提供了对作业的调度 二:quartz spring配置详

  • c# SendMail发送邮件实例代码 2014-11-19

    这篇文章介绍了c# SendMail发送邮件实例代码,有需要的朋友可以参考一下 using System; using System.Collections.Generic; using System.Net; using System.Net.Mail; using System.Text; namespace Common { /// <summary> /// 基于system.net.mail发送邮件,支持附件 /// </summary> public class Net

  • ASP中实现定时发送邮件的代码分享 2015-01-02

    这篇文章主要介绍了ASP中实现定时发送邮件的代码分享,使用VBS的方式实现,并运行在数据库中,需要的朋友可以参考下 现在的这个项目需要用asp做定时邮件发送,好多人都说asp没有这样的功能. 其实我在以前的一篇文章已经做过详细的解释了,不过那个是定时任务,基本思路是一样的. 参考:ASP中实现执行定时任务的方法 这里我们使用JMail组件的方式来做,邮件的内容为单个网页,可以自由定制. 下面我们看看定时邮件发送的代码: Function getHTTPPage(url) dim objXML s

  • javamail发送邮件的简单实例 2014-09-09

    今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题.为了以后使用方便,自己写了段代码,打成jar包,以方便以后使用. 以下三段代码是我的全部代码,朋友们如果想用,直接复制即可. 第一个类:MailSenderInfo.java package com.util.mail; /** * 发送邮件需要使用的基本信息 *author by wangfun http://www.5a520.cn 小说520 */ import java.util.Properties; p

  • c#通过进程调用cmd判断登录用户权限代码分享 2013-10-07

    最近自己开发软件需要读取本地配置文件,因为登录用户的权限不够会导致无法读取文件进而导致程序崩溃,查了一些解决方法,代码分享如下 /// <summary> /// 应用程序的主入口点. /// </summary> [STAThread] static void Main() { if (RunCmd("net localgroup administrators").IndexOf(System.Environment.UserName) >= 0) {

  • 贪吃蛇游戏C++命令行版实例代码 2014-01-13

    这篇文章主要介绍了贪吃蛇游戏C++命令行版实例代码,包含了常见的循环语句及相关游戏规则的判定方法,有助于更好的理解游戏设计原理,需要的朋友可以参考下 本文实例讲述了贪吃蛇游戏C++命令行版的实现代码,是非常经典的游戏.分享给大家供大家参考.具体实现方法如下: 众所周知,贪吃蛇游戏是经典的计算机游戏. 游戏描述如下: 1. 贪吃蛇可以自动直线前进,或者玩家可以通过方向键操纵贪吃蛇上下左右前进,每次前进一格. 2. 贪吃蛇在规定的区域内活动,当: ①贪吃蛇触碰到墙壁时: ②贪吃蛇的蛇头触碰到蛇身或者

  • 编写android拨打电话apk应用实例代码 2014-01-27

    这篇文章主要介绍了编写android拨打电话apk应用实例代码,十分的实用,这里分享给大家,有需要的小伙伴可以参考下 android 实现拨打电话的app,代码非常简单,功能也很实用,分享给大家. MainActivity.java package com.bblei.caller; import android.R.string; import android.app.Activity; import android.content.Intent; import android.net.Uri