书写一个发送邮件类

本文提供了一个Java程序示例,展示如何通过163邮箱SMTP服务器发送包含激活链接的HTML格式邮件。示例中详细介绍了配置邮件发送所需的属性、创建会话、构造邮件对象并最终发送邮件的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public class MailUtil {
	public static void send(String add,String code){
		// 1. 创建一封邮件
		 Properties props = new Properties();
		       //获取163邮箱smtp服务器的地址,
		     props.setProperty("mail.host", "smtp.163.com");
		         //是否进行权限验证。
		 props.setProperty("mail.smtp.auth", "true");
     
        Session session= Session.getDefaultInstance(props,new Authenticator() {
        	@Override
        	protected PasswordAuthentication getPasswordAuthentication() {
        		// TODO Auto-generated method stub
        		return new PasswordAuthentication("你的邮箱地址", "你的客户端授权密码");
        	}
		}); // 根据参数配置,创建会话对象(为了发送邮件准备的)
        MimeMessage message = new MimeMessage(session);     // 创建邮件对象

       

        // 2. From: 发件人
        //    其中 InternetAddress 的三个参数分别为: 邮箱, 显示的昵称(只用于显示, 没有特别的要求), 昵称的字符集编码
        //    真正要发送时, 邮箱必须是真实有效的邮箱。
        try {
			message.setFrom(new InternetAddress("你的邮箱地址", "小黑", "UTF-8"));
			// 3. To: 收件人 第一个参数是收件人邮箱
			  message.setRecipient(MimeMessage.RecipientType.TO, new InternetAddress(add, "小白", "UTF-8"));
			  // 4. Subject: 邮件主题
		        message.setSubject("激活邮件", "UTF-8");

		        // 5. Content: 邮件正文(可以使用html标签)
		        message.setContent("<h1>激活邮件</h1><h3><a href='http://localhost:8080/javamail/user/yz?code="+code+"'> http://localhost:8080/javamail/user/yz?code="+code+"</a></h3>", "text/html;charset=UTF-8");
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (MessagingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        try {
        	Transport.send(message);
		} catch (MessagingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
      
	}
}

这个授权码可以登陆你的163邮箱,然后点击设置,pop3,smtp这样的设置去设置。

对了这个需要使用第三方jar包

maven地址

 <dependency>
   <groupId>com.sun.mail</groupId>
   <artifactId>javax.mail</artifactId>
   <version>1.5.5</version>
</dependency>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值