zoukankan      html  css  js  c++  java
  • Javamail 两种不同方式分析

    Javamail 两种不同方式分析
    第一种: 登陆个人邮箱,以此邮箱为基础发送邮件:
     public static void sendTxtMail()
        {
            Properties props = new Properties();
    
            Session session = Session.getInstance(props, null);
            session.setDebug(true);// 打开debug模式,会打印发送细节到console
            Message message = new MimeMessage(session); // 实例化一个MimeMessage集成自abstract Message
                                                        // 。参数为session
            try
            {
                message.setFrom(new InternetAddress("xxxxxx")); // 设置发出方,使用setXXX设置单用户,使用addXXX添加InternetAddress[]
    
                message.setText("Test!"); // 设置文本内容 单一文本使用setText,Multipart复杂对象使用setContent
    
                message.setSubject("Test!"); // 设置标题
    
                message.setRecipient(Message.RecipientType.TO, new InternetAddress("mx91953@imcap.ap.ssmb.com")); // 设置接收方
    
                /**
                 * 使用静态方法每次发送需要建立一个到smtp服务器的链接,你可以手动控制连接状态
                 * ,通过session获得tansport,连接到mailserver,而session就可以使用Session
                 * .getDefaultInstance(props,null);获得
                 */
                Transport transport = session.getTransport("smtp");
                transport.connect("smtp.126.com", "xxxx, "xxxx");//用户名,密码
                message.saveChanges();
                transport.sendMessage(message, message.getAllRecipients());
                transport.close();
                
            }
            catch (Exception e)
            {
                // 此处处理AddressException异常 [The exception thrown when a wrongly formatted address is
                // encountered.]
    
            } 
    
        }

    第二种 本地有邮件服务已经启动。 linux 或者window 都应该有。具体不清楚 例子为linux:
    try
    {
        String from = "XXXX" + InetAddress.getLocalHost().getHostName();//?????????
        String host = "localhost";
        Properties props = new Properties();
    
        props.put("mail.smtp.host", host);
        props.put("mail.debug", "true");//debug
        Session mailSession = Session.getInstance(props);
    
        Message msg = new MimeMessage(mailSession);
    
        msg.setFrom(new InternetAddress(from));
        InternetAddress[] address = { new InternetAddress(XXXXXXX) };//?????
        msg.setRecipients(Message.RecipientType.TO, address);
        msg.setSubject("Test"); // ????
        msg.setSentDate(new Date()); //??
    
        // Set message content
        msg.setText("Test"); // ????
    
        // Send the message
        Transport.send(msg); //??
    
    }
    catch (Exception mex)
    {
        // Prints all nested (chained) exceptions as well
        mex.printStackTrace();
    }



    
    

     
  • 相关阅读:
    Win10下IIS配置图解、MVC项目发布图解、IIS添加网站图解
    小猴子下落(二叉树,思维)
    Curious Robin Hood(树状数组+线段树)
    表达式求值(后缀表达式求值)
    郁闷的C小加(一)(后缀表达式)
    最小公倍数(大数)
    修路方案(次小生成树)
    Cipher(置换群)
    Cow Sorting(置换群)
    Necklace of Beads(polya计数)
  • 原文地址:https://www.cnblogs.com/xue88ming/p/7182996.html
Copyright © 2011-2022 走看看