首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

java邮件开发-心得3-第一个java mail

2013-01-26 
java邮件开发--心得3-第一个java mail1.java mail介绍2.jaf介绍3. 第一个: javaMail 实例分析package com.

java邮件开发--心得3-第一个java mail

1.  java mail介绍

java邮件开发-心得3-第一个java mail

java邮件开发-心得3-第一个java mail

java邮件开发-心得3-第一个java mail

2.  jaf介绍

java邮件开发-心得3-第一个java mail

3. 第一个: javaMail 实例分析

package com.csdn.itcast;import java.util.Properties;import javax.mail.Address;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;public class Demo1 {/** * @param args * @throws MessagingException * @throws AddressException *  *             开发时提示找不到某些驱动的事,要看看是不是忘了导入某些包 */public static void main(String[] args) throws AddressException,MessagingException {// 5.实例化session的时候需要传入一个props属性Properties props = new Properties();// 设置登录的认证方式props.setProperty("mail.smtp.auth", "true");// 设置传输协议props.setProperty("mail.transport.protocol", "smtp");// 4.创建卫星的时候需要传入一个sessionSession session = Session.getInstance(props);session.setDebug(true);// 1.创建message信息,好比创建卫星;mimeMessage是message的子类,因为message是抽象类,所以这里实例化它的子类Message msg = new MimeMessage(session);// 设置邮件的内容和发件人,注意:这里发件人是设置的,固你可以随意填写发件人邮箱,假的都无所谓msg.setText("你好!!");msg.setFrom(new InternetAddress("yang@163.com"));// 2.创建发送邮件的工具,好比创建火箭Transport transport = session.getTransport();transport.connect("smtp.sina.com", 25, "itcast_test", "123456");/* * 3.用火箭发射卫星;sendMessage()方法是Transport的对象调用的方法,send()则是Transport直接调用的方法,即静态方法 * ; 后者是把transport连接融合一块的方法,适合发送一条邮件的情况,因为如果发送多条会设置多个重复连接;而前者则相反 */transport.sendMessage(msg, new Address[] { new InternetAddress("itcast_test@sohu.com") });// transport.send(msg, new Address[]{new// InternetAddress("itcast_test@sohu.com")});// 6.关闭资源transport.close();}}4.第二个:复杂一点的案例package com.csdn.itcast;import java.util.Properties;import javax.mail.Address;import javax.mail.Authenticator;import javax.mail.Message;import javax.mail.PasswordAuthentication;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMessage.RecipientType;import javax.mail.search.ReceivedDateTerm;public class Demo2 {/** * @param args */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.sina.com");//下面用策略模式编写:这里在创建session的时候直接传入一个面对信息反馈器(new 一个Authenticator匿名内部类),来设置登录名和登录密码Session session = Session.getInstance(props,new Authenticator() {protected PasswordAuthentication getPasswordAuthentication(){return new PasswordAuthentication("itcast_test","123456");}});session.setDebug(true);Message msg = new MimeMessage(session);msg.setFrom(new InternetAddress("itcast_xxx@sina.com"));msg.setSubject("中文主题");//这里用InternetAddress.parse()方法与前面案例用到的new Address[] {}达到的效果一样,parse()可以传入多个参数返回一个InternetAddress型的数组msg.setRecipients(RecipientType.TO,InternetAddress.parse("itcast_test@sina.com,itcast_test@sohu.com"));msg.setContent("<span style='color:red'>你傻啊!</span>","text/html;charset=UTF-8");Transport.send(msg);}}


 

热点排行