先声明下,以下代码并不是全部由我写出来的,这里还要感谢我的IT老师郑老师(虽然他可能不会知道我会在这里提到他,不过我还是要感谢他!)主体代码都是由郑老师提供,只有部分我所需要的功能是我稍加修改加上去的!整个实例很简单,希望对各位IT爱好者可以起到抛砖引玉的作用。
package maildemo;
import java.util.*;
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class SendMailDemo {
public SendMailDemo() {
}
public void sendMail(String from,String to,String title,String content)
{
try
{
System.out.println("正在发送邮件,请稍侯...");
Properties p=new Properties();
p.put("mail.transport.protocol","smtp");
p.put("mail.smtp.host","smtp.163.com");//这里的smtp.163.com中间的163要根据你用的邮箱改变!
如果你用的是sina的话,这里就要写成smtp.sina.com,以此类推。不多做解释了!!
p.put("mail.smtp.auth", "true");
p.put("mail.stmp.port","25");
MyAuthenticator auth=new MyAuthenticator("邮箱的前半部分","你邮箱的密码");
//邮箱的前半部分就是指:例如:你的邮箱是12345@sina.com,那么12345这就是你邮箱的前半部分。。
至于密码。。。不用我多说了吧。
恩我想这样说大家应该都很清楚了。
Multipart multipart=new MimeMultipart();
BodyPart part1=new MimeBodyPart(); //第一部分,邮件正文
part1.setText(content);
Session mailSession=Session.getInstance(p,auth);
multipart.addBodyPart(part1);
Message mailMessage=new MimeMessage(mailSession);
mailMessage.setFrom(new InternetAddress(from));
mailMessage.setRecipient(Message.RecipientType.TO,new InternetAddress(to));
mailMessage.setSubject(title);
//mailMessage.setText(content);如果按照这句发的话,html标记在接受过程中会被编译,接收者受到的就不是超链接了
mailMessage.setContent(content,"text/html;charset=utf-8");
//想收到超链接形式就要这样设置。。后面的String一定要这样写哦,有好处的,防止乱码!!
Transport.send(mailMessage);
System.out.println("邮件发送完毕!");
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
public static void main(String[] args) {
String from="发件人的";
String to="收件人的Email地址";
String title="first";
String content="<a href='http://news.163.com/09/0317/01/54IQT3GM00011229_2.html'>11111</a>";
//这部分就是一段html代码了,根据需要只写body中的部分即可。
SendMailDemo obj=new SendMailDemo();
obj.sendMail(from,to,title,content);
}
}
代码就这些就够了,还有最最最关键的就是java包了。。这里所需要的三个发送Email的java包是在MyEclipes中不存在的需要你下载导入才可以使用,简单介绍下这三个java包。
activation.jar mail-1.4.jar pop3.jar
就这三个了,有兴趣自己去下就好。
还有要说明一点,如果你测试的时候用的是163或者126的2006年之后注册的邮箱发送Email可能会有问题。因为他们现在已经不使用smtp协议了,所以,建议不要用这两个,以免给自己制造不必要的麻烦!!
分享到:
相关推荐
利用JavaMail API来发送Email的工具类 支持单发,群发及无限制数量的附件功能,并同时支持简单邮件和HTML两种格式的邮件内容 支持抄送,密送功能 具体使用参见其mail方法的使用示例
利用javamail实现发送邮件,java包等
在spring利用javamail,quartz定时发送邮件
利用JAVAMAIL实现的发送邮件的小例子
利用JavaMail发送邮件的实例,可以直接运行
利用JavaMail for Android和MailSender实现发送邮件
该程序通过JavaMail是实现邮件的发送,代码经过测试并成功,如果不能成功,请你在outlook下测试,看看你的设置是否正确。其它类包都包含在工程里面,并设置好路径了,你下载后,只要加载到Eclipse下面并修改JRE路径...
介绍了如何利用javamail实现带附件的邮件发送,附有代码
jsp 利用 javamail发送邮件(附带java web项目文件) 绝对可用
android使用javamail发送邮件jar包,可以直接导入到Android studio使用
这个是在javamail的环境下才建立的 要想运行此代码 先得配置环境 就是加一些jar包
NULL 博文链接:https://love-66521.iteye.com/blog/1676647
java mail javamail 邮件发送,程序利用javamail技术发送邮件
利用JavaMail发送邮件所需的Jar包
利用jsp和javamail实现电子邮件的发送。适合初学者学习!
java 发邮件java 发邮件java 发邮件java 发邮件
利用JavaMail来发送电子邮件 - HTML格式 InternetAddress[] address = null; //request.setCharacterEncoding("utf8"); String mailserver = "smtp.163.com";//发出邮箱的服务器 String From = request....
邮件发送功能: 用户可以通过系统界面编写邮件、设置收件人、添加附件等,并将邮件发送到指定的邮件服务器。 系统利用JavaMail API来构建和发送邮件,通过SMTP(Simple Mail Transfer Protocol)协议与邮件服务器...
quartz.jar mail.jar jta.jar commons-collections-3.2.1.jar commons-pool-1.3.jar commons-dbcp-1.2.2.jar log4j-1.2.14.jar等
本资源是利用javamail实现的一个发送邮件的小例子。本人亲测成功!有需要的可以来下载看看。不过有一些邮箱的smtp和pop3需要自己设置一下