问下发邮件是不是一定要socket

J2EE 码拜 10年前 (2015-05-10) 1385次浏览 0个评论

问下发邮件是不是一定要socket问下发邮件是不是一定要socket

问下发送邮件一定要socket这个吗
10分
现在用邮件服务器,你这样配置好地址就行了啊。具体的邮件通信是SMTP协议
10分
不一定,可以用spring的邮件。
20分
用Java mail发邮件,挺简单的,楼主参考一下这篇文章http://www.cnblogs.com/codeplus/archive/2011/10/30/2229391.html
可是我这样子配出现了个错误呀问下发邮件是不是一定要socket
public void sendMailByApache(String mail) {  
     
       try {  
         // 创建附件对象  
            EmailAttachment attachment = new EmailAttachment();  
           /* 附件的地址 */  
            attachment.setPath(fileNames);  
            // 设定为附件  
            attachment.setDisposition(EmailAttachment.ATTACHMENT);  
            /* 附件的描述 */  
            attachment.setDescription(“This is Test!”);  
            /* 附件的名称,必须和文件名一致 */  
            attachment.setName(fileNames);  
        
            HtmlEmail email = new HtmlEmail();  
            // 这里是发送服务器的名字  
           email.setHostName(“smtp.163.com”);  
           // 编码集的设置  
//添加这条设置后发送就会失败            email.setStartTLSEnabled(true);
            email.setSSLOnConnect(true);
  
            email.setCharset(“gbk”);  
            // 收件人的邮箱  
            email.addTo(“13570841486@163.com”);  
            // 发送人的邮箱  
           email.setFrom(“13570841486@163.com”);  
           // 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码  
            email.setAuthentication(“13570841486@163.com”, “heyi111!”);  
            email.setSubject(“Android Test”);  
            // 要发送的信息  
            email.setMsg(“This is test!”);  
            // 添加附件对象  
           email.attach(attachment);  
           // 发送  
            email.send();  
        } catch (EmailException e) {  
            // TODO Auto-generated catch block  
            Log.i(“IcetestActivity”, e.getMessage());  
        }  
   
   }
这个代码为什么不能发送呀

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明问下发邮件是不是一定要socket
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!