java 发送邮件带附件

原创
2018/10/25 16:23
阅读数 144
  1. 使用jar包mail

  2. 使用客户端发送邮件需要先在邮箱里面设置授权客户端发送

public static void main(String[] args) throws MessagingException {
		Properties props = new Properties();
		props.put("mail.smtp.host", "smtp.sina.com"); // 存储发送邮件服务器的信息
		props.put("mail.smtp.auth", "true"); // 同时通过验证
		Session session = Session.getInstance(props); // 根据属性新建一个邮件会话
		session.setDebug(true);
		MimeMessage message = new MimeMessage(session); // 由邮件会话新建一个消息对象
		// 设置邮件
		InternetAddress from = new InternetAddress("XXX@sina.com");
		message.setFrom(from); // 设置发件人
		message.setSubject("测试邮件"); // 设置主题
		message.setText("测试内容"); // 设置信件内容
		message.setSentDate(new Date()); // 设置发信时间

		// 整封邮件的MINE消息体
		MimeMultipart msgMultipart = new MimeMultipart("mixed");// 混合的组合关系
		// 设置邮件的MINE消息体
		message.setContent(msgMultipart);

		// 附件1
		MimeBodyPart attch1 = new MimeBodyPart();
		msgMultipart.addBodyPart(attch1);
		DataSource ds1 = new FileDataSource(new File(
				"C:/Users/bytter/Desktop/1.wsdl"));
		// 数据处理器
		DataHandler dh1 = new DataHandler(ds1);
		// 设置第一个附件的数据
		attch1.setDataHandler(dh1);
		// 设置第一个附件的文件名 中文乱码问题解决
		attch1.setFileName(MimeUtility.encodeWord("2.wsdl");
		
		 //邮件正文  
		
		MimeBodyPart mbpContent = new MimeBodyPart();
        mbpContent.setContent("测试内容2", "text/html;charset=gb2312");
        // 向MimeMessage添加(Multipart代表正文)
        msgMultipart.addBodyPart(mbpContent);

		/*MimeBodyPart body = new MimeBodyPart();
		msgMultipart.addBodyPart(body);
        BodyPart contentPart = new MimeBodyPart();  
        contentPart.setText("测试内容2");
        msgMultipart.addBodyPart(contentPart);*/
        
		Transport transport = session.getTransport("smtp");
		transport.connect("smtp.sina.com", "XXX@sina.com", "XXXX"); // 以smtp方式登录邮箱
		// 设置收件人,并设置其接收类型为TO
		InternetAddress to = new InternetAddress("XXXX@sina.com");
		message.setRecipient(Message.RecipientType.TO, to);
		// 存储邮件信息
		message.saveChanges();
		// 发送
		transport.sendMessage(message, message.getAllRecipients());
		transport.close();
	}
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部