JAVA发邮件实例

网上有很多发邮件的例子
在这里我总结出一份demo
首先准备发送邮件的邮箱帐号密码,以及开通SMTP服务如图:
在这里插入图片描述
在设置里开启SMTP服务

开启后导入发邮件的jar包

<!-- 发邮件Jar -->
	<dependency>
		  <groupId>org.springframework.boot</groupId>
		  <artifactId>spring-boot-starter-mail</artifactId>	
	</dependency>

直接上代码:
新建一个测试发邮件类:

public class EmailTest {
	// 邮件发送协议 
    private final static String PROTOCOL = "smtp"; 

    // SMTP邮件服务器 
    private final static String HOST = "smtp.sina.com"; 

    // SMTP邮件服务器默认端口 
    private final static String PORT = "25"; 

    // 是否要求身份认证 
    private final static String IS_AUTH = "true"; 

    // 是否启用调试模式(启用调试模式可打印客户端与服务器交互过程时一问一答的响应消息) 
    private final static String IS_ENABLED_DEBUG_MOD = "true"; 

    // 发件人 (填写发邮件的用户名)
    private static String from = "XXXX"; 
    // 发件人密码(填写发邮件的用户密码)
    private static String password="XXX";
    
    // 收件人 (自定义填写一个邮箱)
    private static String to = "XXX"; 
    
    // 初始化连接邮件服务器的会话信息 
    private static Properties props = null; 
     
	public static void sendMail() throws AddressException, MessagingException {
		//初始化
		props = new Properties(); 
        props.setProperty("mail.transport.protocol", PROTOCOL); 
        props.setProperty("mail.smtp.host", HOST); 
        props.setProperty("mail.smtp.port", PORT); 
        props.setProperty("mail.smtp.auth", IS_AUTH); 
        props.setProperty("mail.debug",IS_ENABLED_DEBUG_MOD);
		 // 创建Session实例对象 
        Session session = Session.getDefaultInstance(props); 

        // 创建MimeMessage实例对象 
        MimeMessage message = new MimeMessage(session); 
        // 设置发件人 
        message.setFrom(new InternetAddress(from)); 
        // 设置邮件主题 
        message.setSubject("使用发送简单文本邮件"); 
        // 设置收件人 
        message.setRecipient(RecipientType.TO, new InternetAddress(to)); 
        // 设置发送时间 
        message.setSentDate(new Date()); 
        // 设置纯文本内容为邮件正文 
        message.setText("发送文本邮件测试!!!"); 
        // 保存并生成最终的邮件内容 
        message.saveChanges(); 

        // 获得Transport实例对象 
        Transport transport = session.getTransport(); 
        // 打开连接需要邮箱帐号密码
        transport.connect(from, password); 
        // 将message对象传递给transport对象,将邮件发送出去 
        transport.sendMessage(message, message.getAllRecipients()); 
        // 关闭连接(一定要关闭)
        transport.close(); 


	}
	
	public static void main(String[] args) throws AddressException, MessagingException {
		
		sendMail();
	}

发送完之后一定要记得关闭!!!

	transport.close(); 
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值