这几天,我一直在找javamail的相关东西,有没有现成的例子,.可以直接收发在线邮箱内容的代码例子,比如,我想发邮件给我163的帐号,或者获取到我163帐号里的邮件内容,我网上找了很久了,一直没有找到,谢谢

解决方案 »

  1.   

    好的,我把我的能群发的代码贴出来吧,这是以网易邮箱登陆的,也就是说,要先要有一个邮箱帐号和密码package send;/*
     * 本程序可以成功的从网易发邮件出去
     */
    import java.util.Properties;import javax.mail.Address;
    import javax.mail.Message;
    import javax.mail.MessagingException;
    import javax.mail.NoSuchProviderException;
    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 GroupSend1
    {    /**
         * 步骤:
         * 1:建立属性对象,里面要封装的内容有邮箱服务器类型,具体地址,是否通过验证等
         * 2:通过此属性对象,.获取一个邮件会话对象session.并且设置是否要调试
         * 3:通过此会话创建一个消息对象,然后就以此消息对象作为主线,类型http中的request
         * 4:
         */
        public static void main(String[] args)
        {
    //        String tto = "[email protected]";
            String ttitle = "程序发邮件群发测试4";
            String tcontent = "程序发邮件群发测试4";
            String serverType = "";
            String mailServer = "";        // serverType="gmail";
            serverType = "163";
            mailServer = "smtp." + serverType + ".com";
            // mailServer="smtp.21cn.com";
            Properties props = new Properties();// 也可用Properties props =
            // System.getProperties();
            props.put("mail.smtp.host", mailServer);// 存储发送邮件服务器的信息
            // props.put("mail.smtp.host", mailServer);// 存储发送邮件服务器的信息
            props.put("mail.smtp.auth", "true");// 同时通过验证
            Session s = Session.getInstance(props);// 根据属性新建一个邮件会话
            s.setDebug(true);//是否要调试
            
            MimeMessage message = new MimeMessage(s);// 由邮件会话新建一个消息对象
            //之后,以消息对象作为主线.        try
            {
                // 设置邮件
                String emailFrom = "";
                emailFrom = "[email protected]";
                // emailFrom="[email protected]";
                // emailFrom="[email protected]";
                
                //通过字符串创建邮件地址对象
                InternetAddress from = new InternetAddress(emailFrom);
                message.setFrom(from);// 设置发件人
    //            InternetAddress to = new InternetAddress(tto);//收件人地址
                
                //通过指定的收件人地址对象,建立一个发送状态,TO为直接发送
    //            message.setRecipient(Message.RecipientType.TO, to);// 设置收件人,并设置其接收类型为TO
                
                //群发测试开始
                message.addRecipient(Message.RecipientType.TO, new InternetAddress("[email protected]"));
                //注意,上边是addRecipient,这是addRecipients,加了s.加了s的可以直接使用地址对象数组
                message.addRecipients(Message.RecipientType.TO,"[email protected]");
                message.addRecipients(Message.RecipientType.TO,"[email protected]");
                message.addRecipient(Message.RecipientType.TO, new InternetAddress("[email protected]"));
    //            message.addRecipient(Message.RecipientType.TO, new InternetAddress("[email protected]"));
    //            message.addRecipient(Message.RecipientType.TO, new InternetAddress("[email protected]"));
                
                
                //群发测试结束
                
                //通过消息消息对象,设置邮件的相关内容
                message.setSubject(ttitle);// 设置主题
                message.setText(tcontent);// 设置信件内容
                message.setSentDate(new java.util.Date());// 设置发信时间            // 发送邮件
                message.saveChanges();// 存储邮件信息,即将上面的改动更新一下
                //至此,消息对象建立完毕
                
                
                //建立传输对象,它是由邮件会话对象获取指定的传输对象(如smtp)
                Transport transport = s.getTransport("smtp");
                
                //通过传输对象.连接指定的邮箱用户,注意要指定邮件服务器
                transport.connect(mailServer, "zwllxs", "yourpassword");// 以smtp方式登录邮箱
                Address[] addr=message.getAllRecipients();//获取发送到的邮件地址列表
                // transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有
                transport.sendMessage(message,addr);// 发送邮件,其中第二个参数是所有
                
                 for (int i = 0; i < addr.length; i++)
                {
                    System.out.println("邮件数组: "+addr[i].getType()+"  "+addr[i]);
                }
                
                transport.close();
                System.out.println("发送成功!");
            }
            catch (AddressException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            catch (NoSuchProviderException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            catch (MessagingException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }    }}
      

  2.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【zwllxs】截止到2008-07-22 11:48:19的历史汇总数据(不包括此帖):
    发帖的总数量:6                        发帖的总分数:80                       每贴平均分数:13                       
    回帖的总数量:22                       得分贴总数量:5                        回帖的得分率:22%                      
    结贴的总数量:2                        结贴的总分数:40                       
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:4                        未结的总分数:40                       
    结贴的百分比:33.33 %               结分的百分比:50.00 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主该结一些帖子了