MailTest test = new MailTest();
//通过代理发送邮件
test.sendMailByProxy();
}
private void sendMailByProxy()throws Exception{
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
// final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
//设置代理服务器
Properties props = System.getProperties();
props.setProperty("proxySet", "true");
props.setProperty("socksProxyHost", "192.168.1.1");
props.setProperty("socksProxyPort", "1080");
props.setProperty("mail.smtp.host", "smtp.163.com");
//props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);
props.setProperty("mail.smtp.socketFactory.fallback", "false");
props.setProperty("mail.smtp.port", "25");
props.setProperty("mail.smtp.socketFactory.port", "25");
props.put("mail.smtp.auth", "true");
props.put("mail.debug", "true");
props.put("mail.store.protocol", "pop3");
props.put("mail.transport.protocol", "smtp");
final String username = "用户名";
final String password = "密码";
//使用验证
Session session = Session.getDefaultInstance(props,
new Authenticator() {
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication(username,
password);
}
});
MimeMessage message = new MimeMessage(session);
Address address = new InternetAddress("xulei_19850322@163.com");
Address toAaddress = new InternetAddress("xulei_19850322@yahoo.com.cn");
message.setFrom(address);
message.setRecipient(MimeMessage.RecipientType.TO, toAaddress);
message.setSubject("测试");
message.setText("test");
message.setSentDate(new Date());
Transport.send(message);
System.out.println("邮件发送!");
}
javaMail如何通过代理服务器发送邮件~
:在构建javaMail发邮件的时候,只需要确保发件人的邮件服务器路由的通着的就可以了,收件人是不做限制的。举个例子:我要给用QQ邮箱给其他人发邮件,我只要确保能ping通mail.qq.com就可以了,就可以给任何邮件服务器的收件人发邮件了。
代码如下:
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.Message.RecipientType;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class EmailTest {
public static void main(String[] args) throws Exception{
Properties props = new Properties();
props.setProperty("mail.smtp.auth", "true");
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", "smtp.163.com");
Session session = Session.getInstance(props,
new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication("xxx","xxx");//这里分别填写发送email的用户名、密码
}
}
);
session.setDebug(true);
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("xxx"));//这里是发送方的email地址如:xxx@163.com
msg.setSubject("test javamail");
msg.setRecipients(RecipientType.TO,
InternetAddress.parse("xxx"));//这里是接收方的email地址如:xxx@163.com
msg.setContent("谷歌","text/html;charset=gb2312");
Transport.send(msg);
}
}
#15561803649#
c# 如何在代理环境下发送邮件 - ******
#贝适# 你是想通过.net 自带的smtpclient通过代理发送吗?很不幸,smtpclient不带这个功能.你可能要使用第三方组件或是使用CDO库来进行发送邮件 微软有往篇文章讲述如果使用CDO通过代理来发送邮件,你可以搜索'HOW TO: Send Mail with Proxy Server That Is Configured Manually by Using Collaboration Data Objects for Windows in Visual C# .NET' 来找到它.
#15561803649#
java中如何设置javamail 发送邮件的邮件格式? - ******
#贝适# 原生api比较复杂可以考虑apache的mail组件.
#15561803649#
JavaMail如何直接发送IO 流?? - ******
#贝适# 你需要使用 Java Activation Frameowork (activation.jar) 提供的 DataSource (可能还有什么 StreamingDataHandler),Java Activation Framework 就是提供一个延迟处理数据的机制,相当于你提供一个 InputStream 或 OutputStream 给 ...
#15561803649#
使用javamail发送邮件需要设置什么吗? - ******
#贝适# 不需要设置,更不需要软件了,发不成功把错误代码贴出来
#15561803649#
Java怎么直接发送邮件,而不通过页面或者outlook软件. - ******
#贝适# 1 必须编写邮件客户端程序,请使用javamail包2 编写一个页面,触发一个事件,讲发送的内容传递给后台的邮件客户端程序,即可完成你的要求3 你不会是要求我们替你写个程序吧???祝你好运!
#15561803649#
如何使用javamail发送邮件? - ******
#贝适# 安装JMAIL组件 然后按照网上都有的程序去写很简单
#15561803649#
如何在java程序里面发送html邮件 - ******
#贝适# 把下载的这个jar文件放到classpath里(如果是Web项目,就放到WEB-INF/lib目录下. JavaMail主要支持发送纯文本的和html格式的邮件...
#15561803649#
javamail来发邮件怎么设置优先级 - ******
#贝适# Java中可以通过Javamail API实现公司邮箱邮件发送配置,Java mail是利用现有的邮箱账户发送邮件的工具,具体步骤如如下: 1、通过JavamailAPI设置发送者邮箱用户名及密码 2、通过JavamailAPI设置邮件主题、邮件内容、附件及邮件发送时间
#15561803649#
javamail如何发送多行内容 - ******
#贝适# 静态编译就OK了 用的QQ邮箱发信的吧?QQ邮箱要去邮箱设置里设置smtp,可以发送html格式的 有很多种可能,比如: 1、SMTP服务器你可能写成了
#15561803649#
ip需要怎么设置才能用java程序发送邮件 - ******
#贝适# getlocalhost获得本机地址,然后设置端口号.通常是23.设置对方IP和端口号.启动程序就OK了