JAVA发送邮件

这个是我用过 一个发送邮件的代码,里面注解写的比较详细!有些参数要根据你自己的邮件服务器地址去配置。

<%@ page contentType="text/html;charset=GB2312" %>
<!--引入要用到的类库-->
<%@ page import="java.util.*,javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%>
<%!
public String codeToString(String str)
{//处理中文字符串的函数
  String s=str;
  try
    {
    byte tempB[]=s.getBytes("ISO-8859-1");
    s=new String(tempB);
    return s;
   }
  catch(Exception e)
   {
    return s;
   }  
}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>发送邮件的结果</title>
</head>
<body>
<%
try{
//从html表单中接收邮件信息
String to_mail=codeToString(request.getParameter("to"));
String to_title=codeToString(request.getParameter("title"));
String to_content=codeToString(request.getParameter("content"));

to_mail = "xxxxxx@qq.com";//邮件地址
to_title = "test";
to_content = "<table border='1' bgColor='red'><tr><td>发送一个表格</td></tr></table>";

//建立邮件会话
Properties props=new Properties();//也可用Properties props = System.getProperties(); 
props.put("mail.smtp.host","xxxxx.com");//存储发送邮件服务器的信息
props.put("mail.smtp.auth","true");//同时通过验证
Session s=Session.getInstance(props);//根据属性新建一个邮件会话
s.setDebug(true);

//由邮件会话新建一个消息对象
MimeMessage message=new MimeMessage(s);//由邮件会话新建一个消息对象

//设置邮件
InternetAddress from=new InternetAddress("xxx@xxx.com");//这里是发件人地址
message.setFrom(from);//设置发件人
InternetAddress to=new InternetAddress(to_mail);
message.setRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO
message.setSubject(to_title);//设置主题
message.setText(to_content);//设置信件内容
message.setSentDate(new Date());//设置发信时间

 BodyPart mdp=new MimeBodyPart();//新建一个存放信件内容的BodyPart对象
  mdp.setContent(to_content,"text/html;charset=gb2312");//给BodyPart对象设置内容和格式/编码方式
  Multipart mm=new MimeMultipart();//新建一个MimeMultipart对象用来存放BodyPart对
//  给消息对象设置内容

  mm.addBodyPart(mdp);//将BodyPart加入到MimeMultipart对象中(可以加入多个BodyPart)
  message.setContent(mm);//把mm作为消息对象的内容




//发送邮件
message.saveChanges();//存储邮件信息
Transport transport=s.getTransport("smtp");
//以smtp方式登录邮箱,第一个参数是发送邮件用的邮件服务器SMTP地址,第二个参数为用户名,第三个参数为密码
transport.connect("192.168.0.1","user","password");
transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有已设好的收件人地址
transport.close();
%>
<div align="center">
<p>发送成功!</p>
</div>
<%
}catch(MessagingException e){
out.println("发送失败!");
}
%>
</body>
</html> 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值