package org.lazyzhong.test; import java.util.Properties; public class MailSenderInfo { //发送邮件的服务器的ip和端口 private String mailServerHost; private String mailServerPort; //用户名和密码 private String username; private String password; //主题和内容 private String subject; private String content; //发送和接收者 private String fromAddress; private String toAddress; //是否需要验证 private boolean validate; //附件名 private String[] attachFileNames; public Properties getProperties(){ Properties p=new Properties(); p.put("mail.smtp.host",this.mailServerHost); p.put("mail.smtp.port",this.mailServerPort); 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 String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } 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; } public String getFromAddress() { return fromAddress; } public void setFromAddress(String fromAddress) { this.fromAddress = fromAddress; } public String getToAddress() { return toAddress; } public void setToAddress(String toAddress) { this.toAddress = toAddress; } 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 MailSenderInfo() { super(); } }
package org.lazyzhong.test; import javax.mail.*; public class MyAuthenticator extends Authenticator{ String userName=null; String password=null; public MyAuthenticator(){ } public MyAuthenticator(String username, String password) { this.userName = username; this.password = password; } protected PasswordAuthentication getPasswordAuthentication(){ return new PasswordAuthentication(userName, password); } }
package org.lazyzhong.test; import java.util.Properties; import java.util.Date; import java.util.Properties; import javax.mail.Address; import javax.mail.BodyPart; import javax.mail.Message; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.Message.RecipientType; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; public class SimpleMailSender { //简单文本 public boolean sendText(MailSenderInfo mailInfo) throws Exception{ MyAuthenticator authen=null; Properties p=mailInfo.getProperties(); if(mailInfo.isValidate()){ authen=new MyAuthenticator(mailInfo.getUsername(),mailInfo.getPassword()); } //根据权限判断和配置信息生成会话 Session session=Session.getDefaultInstance(p,authen); //根据会话生成消息 Message message=new MimeMessage(session); Address fromAddress=new InternetAddress(mailInfo.getFromAddress()); Address toAddress=new InternetAddress(mailInfo.getToAddress()); message.setFrom(fromAddress); message.setRecipient(RecipientType.TO,toAddress); message.setSubject(mailInfo.getSubject()); message.setSentDate(new Date()); message.setText(mailInfo.getContent()); Transport.send(message); return true; } //html文本 public boolean sendHtmlText(MailSenderInfo mailInfo) throws Exception{ MyAuthenticator authen=null; Properties p=mailInfo.getProperties(); if(mailInfo.isValidate()){ authen=new MyAuthenticator(mailInfo.getUsername(),mailInfo.getPassword()); } //根据权限判断和配置信息生成会话 Session session=Session.getDefaultInstance(p,authen); //根据会话生成消息 Message message=new MimeMessage(session); //发送人的名字可以设置可以不设置...不设置的情况下显示的是邮箱名,即邮件地址截取掉@那部分... Address fromAddress=new InternetAddress(mailInfo.getFromAddress(),"红尘眷恋"); Address toAddress=new InternetAddress(mailInfo.getToAddress()); message.setFrom(fromAddress); message.setRecipient(RecipientType.TO,toAddress); message.setSubject(mailInfo.getSubject()); message.setSentDate(new Date()); // 一个Multipart能包含多个BodyPart Multipart mainPart=new MimeMultipart(); BodyPart body=new MimeBodyPart(); body.setContent(mailInfo.getContent(),"text/html; charset=utf-8"); mainPart.addBodyPart(body); message.setContent(mainPart); Transport.send(message); return true; } /* 当发送多个消息时,建议采用这种方式... * 因为它将保持消息间活动服务器的连接 * message.saveChanges(); // implicit with send() Transport transport = session.getTransport("smtp"); transport.connect(host, username, password); transport.sendMessage(message, message.getAllRecipients()); transport.close();*/ } import javax.mail.Folder; import javax.mail.Message; import javax.mail.NoSuchProviderException; import javax.mail.Session; import javax.mail.Store; import javax.mail.search.AndTerm; import javax.mail.search.FromStringTerm; import javax.mail.search.SearchTerm; import javax.mail.search.SubjectTerm; public class SimpleMailGet { public void getMessage(MailSenderInfo mailInfo) throws Exception{ // Properties props = new Properties(); // props.setProperty("mail.store.protocol","pop3"); // props.setProperty("mail.pop3.host","pop3.163.com"); // Session session = Session.getInstance(props); // // 利用Session对象获得Store对象,并连接pop3服务器 // Store store = session.getStore(); // store.connect("pop3.163.com",110,"xxxxxx@163.com","yyyyyyy"); Properties p=new Properties(); Session session=Session.getDefaultInstance(p,null); Store store=session.getStore("pop3"); store.connect(mailInfo.getMailServerHost(),Integer.parseInt(mailInfo.getMailServerPort()),mailInfo.getUsername(),mailInfo.getPassword()); Folder folder=store.getFolder("INBOX"); /* num1 folder.open(Folder.READ_ONLY); //获取所有。。。 Message message[]=folder.getMessages(); //根据邮件id获取 Message mess=folder.getMessage(35); for(int i=0;i<message.length;i++){ System.out.println(i+" "+message[i].getFrom()[0]+" "+message[i].getSubject()+" "+" "+message[i].getMessageNumber()); } System.out.println(mess.getFrom()[0]);*/ /* * 通过修改标记来改变邮件删除、已阅等状态...pop3是只读的》。。 * folder.open(Folder.READ_WRITE); Message mess=folder.getMessage(35); mess.setFlag(Flags.Flag.DELETED,true); mess.saveChanges(); folder.expunge();*/ folder.open(Folder.READ_ONLY); SearchTerm st = new FromStringTerm("lazy_zhong@163.com"); Message[] message = folder.search(st); for(int i=0;i<message.length;i++){ System.out.println(i+" "+message[i].getFrom()[0]+" "+message[i].getSubject()+" "+" "+message[i].getMessageNumber()); } folder.close(false); store.close(); } } package org.lazyzhong.test;<br> public class MyTest {<br> public static void main(String[] args) throws Exception{<br> //不同的邮箱有不同的主机名和端口号...<br> ////这个类主要是设置邮件<br> // MailSenderInfo mailInfo = new MailSenderInfo(); <br> //mailInfo.setMailServerHost("smtp.163.com"); <br> // mailInfo.setMailServerPort("25"); <br> //mailInfo.setValidate(true); <br> // mailInfo.setUsername("xxxxxxxx@163.com"); <br> // mailInfo.setPassword("yyyyyyyyyyyy");//您的邮箱密码 <br> //mailInfo.setFromAddress("aaaaaaaa@163.com"); <br> //mailInfo.setToAddress("bbbbbbbbb@163.com"); <br> // mailInfo.setSubject("设置邮箱标题"); <br> //mailInfo.setContent("<div style='color:red;font-size:25px;'>春天在哪里啊春天在哪里...</div>"); <br> ////这个类主要来发送邮件<br> // SimpleMailSender sms = new SimpleMailSender();<br> ////sms.sendText(mailInfo);//发送文体格式 <br> //sms.sendHtmlText(mailInfo);//发送邮件格式<br> //获取邮件信息 MailSenderInfo mailInfo = new MailSenderInfo(); <br> mailInfo.setMailServerHost("pop3.163.com");<br> mailInfo.setMailServerPort("110"); <br> mailInfo.setUsername("xxxxxxxxxxxx@163.com");<br> mailInfo.setPassword("yyyyyy");<br> SimpleMailGet smg=new SimpleMailGet();<br> smg.getMessage(mailInfo);<br> }<br> }
相关推荐
javamail例子——简单好用 可以直接发电子邮件 1.当工程是java EE 5的时候 在工程里面应该删除java EE 5里面相对应的 jar 路径在 第一个问题就是删除Java EE 5 Libraries/javaee.jar/mail。 第二个问题就是删除Java...
在这个主题“javaMail学习(七)——使用javaMail发复杂邮件”中,我们将深入探讨如何使用 JavaMail API 发送包含多种附件、HTML 内容和其他复杂元素的邮件。在提供的文件列表中,我们看到一系列名为 MailUtils 的类,...
JavaMail 是一个强大的开源库,用于在Java应用程序中发送和接收电子邮件。在JavaMail中,发送带有附件的邮件涉及到对MIME(Multipurpose Internet Mail Extensions)标准的理解和使用。MIME扩展了邮件协议,允许在...
JavaMail 是一个强大的开源库,用于在Java应用程序中实现电子邮件的发送和接收功能。它提供了丰富的API,使得开发者能够方便地处理SMTP、POP3、IMAP等邮件协议,支持多种邮件格式,包括文本、HTML以及带有附件的邮件...
"JavaMail多人发送电子邮件" JavaMail是一种常用的Java邮件处理库,通过使用JavaMail,可以轻松地发送电子邮件。在实际应用中,经常需要发送电子邮件给多个收件人,本文将介绍如何使用JavaMail实现给多人发送电子...
本篇文章将深入探讨JavaMail的核心概念、关键组件以及如何使用这两个特定的jar包——`jaf-1_1_1.zip`和`javamail1_4_7.zip`。 首先,让我们了解JavaMail的基本组件: 1. **JavaMail API**:这是JavaMail的核心部分...
JavaMail 是一个开源的Java库,它为Java程序员提供了处理电子邮件的能力。这个库不仅支持SMTP、POP3和IMAP协议,还支持其他的邮件系统协议,如NNTP和EWS。JavaMail API是JavaMail库的核心部分,它提供了一系列的接口...
JavaMail 是一个开源库,用于在Java应用程序中处理电子邮件。这个库提供了丰富的API,使得开发者可以方便地执行发送、接收、读取和管理邮件的任务。`javamail-1.6`是JavaMail的一个版本,它包含了从早期版本中继承的...
JavaMail 是一个开源的 Java API,它为开发者提供了在 Java 应用程序中发送和接收电子邮件的功能。这个API包括了多种协议的支持,如SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议)。在...
JavaMail API是Java平台上用于发送和接收电子邮件的一个标准扩展库。它并不是Java标准库的一部分,而是Java企业版(J2EE)中的一部分。JavaMail提供了一系列用于处理电子邮件的类和接口,允许开发者在Java应用程序中...
JavaMail API是Java平台上用于处理电子邮件的一套标准API,它为开发者提供了丰富的接口和类,以便于发送、接收和管理电子邮件。JavaMail API是Java EE的一部分,但也可以在Java SE环境中使用。`javaMail.jar`是...
JavaMail 是一个开源的 Java API,它为Java开发者提供了处理电子邮件的能力。这个API允许开发者发送、接收、管理邮件,包括附件、HTML 内容、MIME 多部分消息等。`javamail.jar` 文件是JavaMail的核心库,包含了所有...
JavaMail 是一个开源的 Java API,它为开发者提供了在 Java 应用程序中发送和接收电子邮件的能力。这个“JavaMail 1.6.0 Final Release”是 JavaMail 的一个重要版本,它包含了对 SMTP(简单邮件传输协议)、IMAP...
JavaMail 是一个强大的开源库,专门用于在Java应用程序中处理电子邮件。这个完整JAR包包含了所有必要的组件,使得开发者能够方便地实现发送、接收、读取以及管理电子邮件。以下是JavaMail的一些关键知识点: 1. **...
javaMail javaMail javaMail javaMail javaMail javaMail javaMail
基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件...
JavaMail 是一个开源的Java库,它为Java程序员提供了发送、接收和操作电子邮件的强大功能。在Java应用程序中发送电子邮件,通常需要依赖特定的库,JavaMail 就是其中之一。本主题将详细介绍JavaMail以及与之相关的`...
JavaMail邮件收发实例_JavaMail_API JavaMail邮件收发实例_JavaMail_API JavaMail邮件收发实例_JavaMail_API JavaMail邮件收发实例_JavaMail_API JavaMail邮件收发实例_JavaMail_API
JavaMail API 1.4.7 是一个广泛使用的开源库,专为Java开发者设计,用于处理电子邮件相关的任务。这个版本的API提供了丰富的功能,包括发送、接收邮件,管理邮箱,处理附件,以及支持多种邮件协议如SMTP(简单邮件...