java 发送单人邮件和多人邮件

java 发送单人邮件和多人邮件

SMTP服务器地址

SMTP服务器地址:一般是 smtp.xxx.com,比如163邮箱是smtp.163.com,qq邮箱是smtp.qq.com。

1:SMTP协议

通常把处理用户smtp请求(邮件发送请求)的服务器称之为SMTP服务器(邮件发送服务器)。

2:POP3协议

通常把处理用户pop3请求(邮件接收请求)的服务器称之为POP3服务器(邮件接收服务器)。

引入依赖

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-mail</artifactId>
</dependency>

测试实现代码

public static void main(String[] args) {
        try {
            // 创建Properties 类用于记录邮箱的一些属性
            Properties props = new Properties();
            // 表示SMTP发送邮件,必须进行身份验证
            props.put("mail.smtp.auth", "true");
            //此处填写SMTP服务器
            props.put("mail.smtp.host", "smtp.qq.com");
            //端口号,QQ邮箱端口587
            props.put("mail.smtp.port", "25");
            props.put("mail.smtp.starttls.enable", "true");
            // 此处填写,写信人的账号
            props.put("mail.user", "*****@qq.com");
            // 此处填写16位STMP口令
            props.put("mail.password", "*******");

            // 构建授权信息,用于进行SMTP进行身份验证
            Authenticator authenticator = new Authenticator() {

                @Override
                protected PasswordAuthentication getPasswordAuthentication() {
                    // 用户名、密码
                    String userName = props.getProperty("mail.user");
                    String password = props.getProperty("mail.password");
                    return new PasswordAuthentication(userName, password);
                }
            };
            // 使用环境属性和授权信息,创建邮件会话
            Session mailSession = Session.getInstance(props, authenticator);
            // 创建邮件消息
            MimeMessage message = new MimeMessage(mailSession);
            // 设置发件人
            InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
            message.setFrom(form);
            
			// 设置单个收件人的邮箱
            /**InternetAddress to = new InternetAddress(recipient);
            message.setRecipient(MimeMessage.RecipientType.TO, to);**/

			
			// 设置多个收件人的邮箱
            String toUser = "*****@qq.com,*****@qq.com";

            if (null != toUser && !toUser.isEmpty()) {

                @SuppressWarnings("static-access")

                InternetAddress[] internetAddressTo = new InternetAddress().parse(toUser);

                message.setRecipients(Message.RecipientType.TO, internetAddressTo);

            }

            
            // 设置邮件标题
            message.setSubject("测试");

            // 设置邮件的内容体
            message.setContent("测试内容", "text/html;charset=UTF-8");

            try {
                // 最后当然就是发送邮件啦
                Transport.send(message);
                System.out.println("***************邮件发送成功***************");
            } catch (MailConnectException m) {
                m.getMessage();
                System.out.println(m.getMessage() + "   邮件发送连接超时");
            }
        } catch (MessagingException e) {
            e.printStackTrace();
        }


    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java可以通过使用JavaMail API来发送Outlook邮件给多个人。以下是一个简单的示例代码,可以用来发送一封包含多个收件人的Outlook邮件: ```java import java.util.Properties; import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; public class SendEmail { public static void main(String[] args) { String to = "[email protected], [email protected], [email protected]"; //多个收件人用逗号分隔 String subject = "Test Email"; String body = "This is a test email sent from Java."; //设置邮件服务器属性 Properties props = new Properties(); props.put("mail.smtp.host", "your_smtp_server_address"); props.put("mail.smtp.port", "your_smtp_server_port"); props.put("mail.smtp.auth", "true"); //创建会话对象 Session session = Session.getDefaultInstance(props, new Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication("your_username", "your_password"); } }); try { //创建邮件对象 Message message = new MimeMessage(session); message.setFrom(new InternetAddress("your_email_address")); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to)); message.setSubject(subject); message.setText(body); //发送邮件 Transport.send(message); System.out.println("Email sent successfully."); } catch (MessagingException e) { throw new RuntimeException(e); } } } ``` 请注意,此示例仅包含了基本的邮件发送功能,实际应用中可能需要添加更多的邮件头信息、附件等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值