发送电子邮件时不使用java中的gmail身份验证

发送电子邮件时不使用java中的gmail身份验证,java,authentication,smtp,sendmail,Java,Authentication,Smtp,Sendmail,嗨,我必须用java发送电子邮件 下面的方法对我很有效 public class SendMail { public static void main(String[] args) { Properties props = new Properties(); props.put("mail.smtp.host", "smtp.gmail.com

嗨,我必须用java发送电子邮件

下面的方法对我很有效

          public class SendMail {

             public static void main(String[] args) {                   
                 Properties props = new Properties();
                 props.put("mail.smtp.host", "smtp.gmail.com");
                 props.put("mail.smtp.socketFactory.port", "465");
                 props.put("mail.smtp.socketFactory.class",
                                "javax.net.ssl.SSLSocketFactory");
                 props.put("mail.smtp.auth", "true");
                 props.put("mail.smtp.port", "465");

                 Session session = Session.getDefaultInstance(props,
                                   new javax.mail.Authenticator() {
                                     protected PasswordAuthentication getPasswordAuthentication() {
                                        return new PasswordAuthentication("xxxx@gmail.com","xxxxx!1");
                                     }
                                   });

                  try {
                        Message message = new MimeMessage(session);
                        message.setFrom(new InternetAddress("krishnaveni.veeman@gmail.com"));
                        message.setRecipients(Message.RecipientType.TO,
                                      InternetAddress.parse("mercy.krishnaveni@gmail.com"));
                        message.setSubject("Testing Subject");
                        message.setText("Dear Mail Crawler," +
                                      "\n\n No spam to my email, please!");
                        Transport.send(message);
                        System.out.println("Done"); 
                      } catch (MessagingException e) {
                          throw new RuntimeException(e);
                      }
              }

           }

这里我提到了gmail用户名和密码。但是我必须在我的代码中不使用用户名和密码发送电子邮件。我如何开发这个。请帮助我。

创建一个mail.properties文件,并将用户名和密码放入该文件中。使用属性在代码中从此文件检索数据

此链接可用于加载对象的属性


创建一个mail.properties文件,并将用户名和密码放入该文件中。使用属性在代码中从此文件检索数据

此链接可用于加载对象的属性


我现在要做的第一件事就是在这里发布后更改我的gmail密码!!为了提高安全性,还应启用双因素身份验证。是的,在询问stackoverflow时,您应始终混淆敏感数据(公司名称等)。离题:您不应向垃圾邮件发送者发送电子邮件。我现在要做的第一件事是在此处发布后更改我的gmail密码!!为提高安全性,还应启用双因素身份验证。是的,您应始终混淆敏感数据(公司名称等)问stackoverflow.off主题:你不应该给垃圾邮件发送者写电子邮件我的代码中没有提到我的gmail用户名和密码,不需要在收件箱中传递。不。我在收件箱中传递了邮件。但在下面的代码行中,我提到了我的mailid的用户名和密码。在这行中,我没有在邮件在收件箱中传递的同时提到用户名和密码。此处提供了任何其他可能的方式。返回新密码身份验证(“xxxxx@gmail.com“,“xxxx!1”)@user1897014-“我的代码中没有提到我的gmail用户名和密码”是的。是的,你做到了。阅读您最初发布的代码。到目前为止,您的电子邮件帐户几乎肯定已被泄露。你在想什么@杰克曼尼可能不知道,所以在帖子上跟踪编辑历史!我的代码中没有提到我的gmail用户名和密码。用Java发送邮件是可能的,你可以从任何机器上发送电子邮件,不需要在收件箱中传递。不。我在收件箱中传递了邮件。但在下面的代码行中,我提到了我的mailid的用户名和密码。在这行中,我没有在邮件在收件箱中传递的同时提到用户名和密码。此处提供了任何其他可能的方式。返回新密码身份验证(“xxxxx@gmail.com“,“xxxx!1”)@user1897014-“我的代码中没有提到我的gmail用户名和密码”是的。是的,你做到了。阅读您最初发布的代码。到目前为止,您的电子邮件帐户几乎肯定已被泄露。你在想什么@杰克曼尼可能不知道,所以在帖子上跟踪编辑历史!