首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

急求javamail发送邮件的有关问题

2012-04-04 
急求javamail发送邮件的问题我在web页面表单中是这样的:用户填写电子邮件和邮件内容2项内容,点击发送就可

急求javamail发送邮件的问题
我在web页面表单中是这样的:
      用户填写电子邮件和邮件内容2项内容,点击发送就可以发送到我指定的邮箱中。

但是在javamail发送邮件时,是需要验证发送者邮件的用户名和密码的,我怎么知道呢?这样的情况如何实现发送邮件呢,因为我想用foxmail收到该人发的邮件后,立即就可以回复他的邮件啊。

请教大虾门帮忙啊。

===============================================
代码如下:
  //取得接收邮件的地址
                        String   to   =   "hgggbbxe@126.com ";
                        if   (to.trim().length()   ==   0)   {
                                response.sendRedirect( "MessageShow.jsp?message= "   +   "接收邮件的地址不能为空。 ");
                                return;
                        }   //取得发送邮件的地址      
                        String   from   =   "hg3ddr@163.com ";
                        if   (from.trim().length()   ==   0)   {
                                response.sendRedirect( "MessageShow.jsp?message= "   +   "发送邮件的地址不能为空。 ");
                                return;
                        }   //取得SMTP邮件服务器的地址  
                        String   host   =   "smtp.163.com ";
                        if   (host.trim().length()   ==   0)   {
                                response.sendRedirect( "MessageShow.jsp?message= "   +   "SMTP邮件服务器地址不能为空。 ");
                                return;
                        }
                        //联接SMTP邮件服务器是否需要输入用户名和密码    
                        boolean   auth   =   true;
                        //Boolean.getBoolean(request.getParameter( "auth "));

                        //取得邮件内容    
                        String   msgText   =   " <meta   http-equiv=Content-Type   content=text/html;   charset=utf-8> 邮件的内容 <br> "
                        + " <img   src= 'http://www.mldn.cn/image/tuiguang/tuiguang3.gif '   width=400> <br> 邮件的内容邮件的内容邮件的内容邮件的内容 "
                        + "[hg3000发送] <br> 邮件的内容邮件的内容 ";                        



                        if   (msgText.trim().length()   ==   0)   {
                                response.sendRedirect( "MessageShow.jsp?message= "   +   "邮件的内容不能为空。 ");
                                return;
                        }
                        //取得邮件的标题    
                        String   subject   =   "测试邮件的信 ";
                        if   (subject.trim().length()   ==   0)   {
                                response.sendRedirect( "MessageShow.jsp?message= "   +   "邮件标题不能为空。 ");
                                return;
                        }   //取得联接SMTP服务器的用户名  
                        String   username   =   "hg3ddr ";
                        //取得联接SMTP服务器的密码              
                        String   password   =   "123456 ";
                        //在服务器显示发送邮件信息    
                        boolean   debug   =   true;
                        //创建邮件服务器的属性类        
                        Properties   props   =   new   Properties();
                        //加入SMTP服务器的名字          
                        props.put( "mail.smtp.host ",   host);
                        //加入联接SMTP服务器是否需要用户检验的变量    
                        props.put( "mail.smtp.auth ",   String.valueOf(auth));
                        //加入是否显示发送邮件时信息的变量              
                        if   (debug)   {
                                props.put( "mail.debug ",   String.valueOf(debug));
                        }

                        //创建发送邮件进程                            


                        Session   sessions   =   Session.getInstance(props,   null);
                        //定义是否显示发送邮件时的信息  
                        sessions.setDebug(debug);
                        try   {
                                //创建邮件发送包                  
                                Message   msg   =   new   MimeMessage(sessions);
                                //设置邮件发送包的发送地址
                                msg.setFrom(new   InternetAddress(from));
                                //创建邮件接收地址类                  
                                InternetAddress[]   address   =   {   new   InternetAddress(to),new   InternetAddress( "hgbd@qwserv.com ")   };
                                //设置邮件发送包的接收地址                  
                                msg.setRecipients(Message.RecipientType.TO,   address);
                                //设置邮件主题                  
                                msg.setSubject(subject);
                                //设置邮件的发送时间                      
                                msg.setSentDate(new   Date());
                               
                                //设置邮件的内容                        
                                //msg.setText(msgText);
                                msg.setContent( " <meta     http-equiv= 'Content-Type '     content= 'text/html;   charset=utf-8 '> "
                                +   msgText, "text/html;charset=utf-8 ");
                               


                                //联接SMTP服务器时需要输入用户和密码的执行代码                        
                                if   (auth)   {
                                        Transport   transport   =   sessions.getTransport( "smtp ");
                                        //使用用户名和密码联接SMTP服务器                                
                                        transport.connect(host,   username,   password);
                                        //发送邮件                                
                                        transport.sendMessage(msg,   msg.getAllRecipients());
                                        transport.close();
                                }   else   {
                                        //联接SMTP服务器时不需要输入用户和密码的执行代码                                
                                        Transport.send(msg);
                                }
                                out.print( "邮件发送成功! ");
                        }   catch   (Exception   ex)   {
                                ex.printStackTrace();
                                return;
                        }

[解决办法]
用户名密码就是发件人所使用邮箱的SMTP用户名和密码
邮件都通过发送人邮箱发送
另外,你可以指定reply-to,这样foxmail中reply的时候就会回复到指定的邮箱了

简而言之 发件人是网站 但是回复接受者是用户自己输入的邮箱地址

热点排行