java越权发送邮件代码 java代码实现发送邮件

急java 发送邮件 急!~急!~ 高手快进来帮忙看看啊!~

这是我的连续发几封邮件的代码。连续发是为了163邮箱的积分,^_^。你可以参考下。

为光泽等地区用户提供了全套网页设计制作服务,及光泽网站建设行业解决方案。主营业务为网站设计制作、成都网站设计、光泽网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

package com.test;

import java.io.*;

import java.util.*;

import javax.mail.*;

import javax.mail.internet.*;

public class SendEmail extends Authenticator {

public static final String mailuser = "xianlaioy"; // 需要你的邮箱帐号(仅@符号前面的)

public static final String password = "######"; // 需要你的邮箱密码

private Properties props;

public PasswordAuthentication getPasswordAuthentication() {

return new PasswordAuthentication(mailuser, password);

}

public SendEmail(){

props = new Properties();

InputStream is = null;

try {

/*当部署在web容器中时,路径要修改

* Thread.currentThread().getContextClassLoader().getResource("").getPath();

* 得到的url是web容器中的项目下的class路径

**/

is = new FileInputStream("src/sendemail.properties");

} catch (FileNotFoundException e) {

e.printStackTrace();

}

try {

props.load(is);

} catch (IOException e) {

e.printStackTrace();

}

}

/** email为接收邮箱,text为邮件正文

* @throws IOException */

public void sendEamils(String email, String text) throws IOException {

Transport transport = null;

try {

props.setProperty("mail.smtp.host", props.getProperty("mail.smtp.host"));

props.setProperty("mail.smtp.auth", props.getProperty("mail.smtp.auth"));

SendEmail auth = new SendEmail();

javax.mail.Session session = javax.mail.Session.getDefaultInstance(props,

auth);

MimeMessage message = new MimeMessage(session);

Address addressFrom = new InternetAddress(SendEmail.mailuser

+ "@163.com", "欧阳");

Address addressTo = new InternetAddress(email, "xianlai");

message.setText(text);

message.setSubject("邮件标题");

message.setFrom(addressFrom);

message.addRecipient(Message.RecipientType.TO, addressTo);

message.saveChanges();

transport = session.getTransport("smtp");

session.setDebug(true);

/*transport.connect("smtp.126.com", SendEmail.mailuser,

SendEmail.password);*/

transport.send(message);

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

} catch (NoSuchProviderException e) {

e.printStackTrace();

} catch (MessagingException e) {

e.printStackTrace();

} finally {

if (transport != null) {

try {

transport.close();

} catch (MessagingException e) {

e.printStackTrace();

}

}

}

}

public static void main(String[] args) {

Timer t = new Timer();

long delay =2*60*1000;

t.schedule(new TimerTask(){

private int count=0;

private SendEmail se=new SendEmail();//作为成员变量就只会创建一个SendEmail对象。

public void run() {

//在timer的run中就必须考虑好怎样或者什么时候退出的问题。

//这里是用count计数的方法来考虑退出的问题的。

if(count++1){

int i=10;

for (int j = 0; j i; j++) {

try {

se.sendEamils("xianlaioy@126.com","test"+j );

} catch (IOException e) {

e.printStackTrace();

}

}

}else {

this.cancel();

System.exit(0);

}

}}, 2000,delay);

}

}

Java发送邮件

JAVA邮件发送的大致过程是这样的的:

1、构建一个继承自javax.mail.Authenticator的具体类,并重写里面的getPasswordAuthentication()方法。此类是用作登录校验的,以确保你对该邮箱有发送邮件的权利。

2、构建一个properties文件,该文件中存放SMTP服务器地址等参数。

3、通过构建的properties文件和javax.mail.Authenticator具体类来创建一个javax.mail.Session。Session的创建,就相当于登录邮箱一样。剩下的自然就是新建邮件。

4、构建邮件内容,一般是javax.mail.internet.MimeMessage对象,并指定发送人,收信人,主题,内容等等。

5、使用javax.mail.Transport工具类发送邮件。

如何使用Java发送qq邮件

方法:

1.前提准备工作:

首先,邮件的发送方要开启POP3 和SMTP服务--即发送qq邮件的账号要开启POP3 和SMTP服务

2.开启方法:

登陆qq邮箱

3.点击 设置

4.点击—-账户

5.找到:POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务 —点击开启

6.送短信 —–点击确定

7.稍等一会,很得到一个授权码! –注意:这个一定要记住,一会用到

8.点击保存修改 —OK 完成

9.java 测试代码:

package cn.cupcat.test;

import java.util.Properties;

import javax.mail.Message;

import javax.mail.MessagingException;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.AddressException;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMessage.RecipientType;

public class SendmailUtil {

public static void main(String[] args) throws AddressException, MessagingException {

Properties properties = new Properties();

properties.put("mail.transport.protocol", "smtp");// 连接协议

properties.put("mail.smtp.host", "smtp.qq.com");// 主机名

properties.put("mail.smtp.port", 465);// 端口号

properties.put("mail.smtp.auth", "true");

properties.put("mail.smtp.ssl.enable", "true");//设置是否使用ssl安全连接 ---一般都使用

properties.put("mail.debug", "true");//设置是否显示debug信息 true 会在控制台显示相关信息

//得到回话对象

Session session = Session.getInstance(properties);

// 获取邮件对象

Message message = new MimeMessage(session);

//设置发件人邮箱地址

message.setFrom(new InternetAddress("123456789@qq.com"));

//设置收件人地址 message.setRecipients( RecipientType.TO, new InternetAddress[] { new InternetAddress("987654321@qq.com") });

//设置邮件标题

message.setSubject("这是第一封Java邮件");

//设置邮件内容

message.setText("内容为: 这是第一封java发送来的邮件。");

//得到邮差对象

Transport transport = session.getTransport();

//连接自己的邮箱账户

transport.connect("123456789@qq.com", "vvctybgbvvophjcj");//密码为刚才得到的授权码

//发送邮件 transport.sendMessage(message, message.getAllRecipients());

}

}

10.运行就会发出邮件了。。。。

下面是我收到邮件的截图,当然我把源码中的邮件地址都是修改了,不是真实的,你们测试的时候,可以修改能你们自己的邮箱。最后,祝你也能成功,如果有什么问题,可以一起讨论!

注意事项

得到的授权码一定要保存好,程序中要使用

用java写一个邮件发送代码

public boolean mainto()

{

boolean flag = true;

//建立邮件会话

Properties pro = new Properties();

pro.put("mail.smtp.host","smtp.qq.com");//存储发送邮件的服务器

pro.put("mail.smtp.auth","true"); //通过服务器验证

Session s =Session.getInstance(pro); //根据属性新建一个邮件会话

//s.setDebug(true);

//由邮件会话新建一个消息对象

MimeMessage message = new MimeMessage(s);

//设置邮件

InternetAddress fromAddr = null;

InternetAddress toAddr = null;

try

{

fromAddr = new InternetAddress(451144426+"@qq.com"); //邮件发送地址

message.setFrom(fromAddr); //设置发送地址

toAddr = new InternetAddress("12345367@qq.com"); //邮件接收地址

message.setRecipient(Message.RecipientType.TO, toAddr); //设置接收地址

message.setSubject(title); //设置邮件标题

message.setText(content); //设置邮件正文

message.setSentDate(new Date()); //设置邮件日期

message.saveChanges(); //保存邮件更改信息

Transport transport = s.getTransport("smtp");

transport.connect("smtp.qq.com", "451144426", "密码"); //服务器地址,邮箱账号,邮箱密码

transport.sendMessage(message, message.getAllRecipients()); //发送邮件

transport.close();//关闭

}

catch (Exception e)

{

e.printStackTrace();

flag = false;//发送失败

}

return flag;

}

这是一个javaMail的邮件发送代码,需要一个mail.jar


文章标题:java越权发送邮件代码 java代码实现发送邮件
分享URL:http://scyanting.com/article/doosspj.html