`
projecttian
  • 浏览: 33397 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java jdk email

 
阅读更多
public class SimpleMailSender {

	public SimpleMailSender() {
	}

	public static boolean sendTextMail(MailSenderInfo mailInfo) {
		JavaingAuthenticator authenticator = null;
		Properties pro = mailInfo.getProperties();
		if (mailInfo.isValidate()) {
			authenticator = new JavaingAuthenticator(mailInfo.getUserName(), mailInfo.getPassword());
		}
		Session sendMailSession = Session.getDefaultInstance(pro, authenticator);
		try {
			Message mailMessage = new MimeMessage(sendMailSession);
			javax.mail.Address from = new InternetAddress(mailInfo.getFromAddress());
			mailMessage.setFrom(from);
			javax.mail.Address to = new InternetAddress(mailInfo.getToAddress());
			mailMessage.setRecipient(javax.mail.Message.RecipientType.TO, to);
			mailMessage.setSubject(mailInfo.getSubject());
			mailMessage.setSentDate(new Date());
			String mailContent = mailInfo.getContent();
			mailMessage.setText(mailContent);
			Transport.send(mailMessage);
		}
		catch (MessagingException ex) {
			ex.printStackTrace();
			return false;
		}
		return true;
	}

	public static boolean sendHtmlMail(MailSenderInfo mailInfo) {
		JavaingAuthenticator authenticator = null;
		Properties pro = mailInfo.getProperties();
		if (mailInfo.isValidate()) {
			authenticator = new JavaingAuthenticator(mailInfo.getUserName(), mailInfo.getPassword());
		}
		Session sendMailSession = Session.getDefaultInstance(pro, authenticator);
		try {
			Message mailMessage = new MimeMessage(sendMailSession);
			javax.mail.Address from = new InternetAddress(mailInfo.getFromAddress());
			mailMessage.setFrom(from);
			javax.mail.Address to = new InternetAddress(mailInfo.getToAddress());
			mailMessage.setRecipient(javax.mail.Message.RecipientType.TO, to);
			mailMessage.setSubject(mailInfo.getSubject());
			mailMessage.setSentDate(new Date());
			Multipart mainPart = new MimeMultipart();
			BodyPart html = new MimeBodyPart();
			html.setContent(mailInfo.getContent(), "text/html; charset=utf-8");
			mainPart.addBodyPart(html);
			mailMessage.setContent(mainPart);
			Transport.send(mailMessage);
		}
		catch (MessagingException ex) {
			ex.printStackTrace();
			return false;
		}
		return true;
	}
}



public class MailSenderInfo {

	private String mailServerHost;
	private String mailServerPort;
	private String fromAddress;
	private String toAddress;
	private String userName;
	private String password;
	private boolean validate;
	private String subject;
	private String content;
	private String attachFileNames[];

	public MailSenderInfo() {
		mailServerPort = "25";
		validate = false;
	}

	public Properties getProperties() {
		Properties properties = new Properties();
		properties.put("mail.smtp.host", mailServerHost);
		properties.put("mail.smtp.port", mailServerPort);
		properties.put("mail.smtp.auth", validate ? "true" : "false");
		return properties;
	}

	public String getMailServerHost() {
		return mailServerHost;
	}

	public void setMailServerHost(String mailServerHost) {
		this.mailServerHost = mailServerHost;
	}

	public String getMailServerPort() {
		return mailServerPort;
	}

	public void setMailServerPort(String mailServerPort) {
		this.mailServerPort = mailServerPort;
	}

	public boolean isValidate() {
		return validate;
	}

	public void setValidate(boolean validate) {
		this.validate = validate;
	}

	public String[] getAttachFileNames() {
		return attachFileNames;
	}

	public void setAttachFileNames(String fileNames[]) {
		attachFileNames = fileNames;
	}

	public String getFromAddress() {
		return fromAddress;
	}

	public void setFromAddress(String fromAddress) {
		this.fromAddress = fromAddress;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getToAddress() {
		return toAddress;
	}

	public void setToAddress(String toAddress) {
		this.toAddress = toAddress;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getSubject() {
		return subject;
	}

	public void setSubject(String subject) {
		this.subject = subject;
	}

	public String getContent() {
		return content;
	}

	public void setContent(String textContent) {
		content = textContent;
	}
}

 

分享到:
评论

相关推荐

    java JDK5.0 实例开发宝典

    Jdk5.0 源代码使用说明 <br>1. 类型基本操作 2. 面向对象的操作 适配器模式 单列模式 工程模式 组合模式。。。 3. 精确计算数字和随机数字 4. java.util.package高级使用 List Set collection.. 5. ...

    java收发email算法

    这两个JAR包是JDK的扩展,它们包含了处理邮件协议所需的类和接口。 1. **配置JavaMail** - 配置JavaMail需要创建一个`Properties`对象,用于设置SMTP服务器的相关参数,如主机名、端口、用户名和密码。 - `...

    Java基于JDK1.6基础上Spring2.5.6版本上发送邮件功能需要的依赖lib.zip

    在Java编程环境中,实现邮件发送功能是一项常见的任务,特别是在企业级应用中,如Spring框架2.5.6版本。为了在JDK1.6的基础上利用Spring进行邮件发送,我们需要了解和配置一系列的依赖库。本篇文章将详细讲解如何在...

    protobuf-2.5.0 JAVA编译JDK1.6

    针对JDK1.6,需要注意的是protobuf-2.5.0版本可能已经不再支持最新的Java特性,因此需要确保项目的其他依赖项和配置也与JDK1.6兼容。同时,由于JDK1.6较旧,可能存在安全漏洞,因此在实际生产环境中,如果可能的话,...

    HiJson_jdk64

    《HiJson_jdk64:深入理解JSON解析与Java 64位环境的结合应用》 在现代软件开发中,数据交换与传输是至关重要的环节,而JSON(JavaScript Object Notation)作为轻量级的数据交换格式,因其简洁、易于阅读和编写的...

    protobuf-2.5.0 JDK1.6JAVA编译 测试DEMO

    标题中的"protobuf-2.5.0 JDK1.6 JAVA编译 测试DEMO"指的是使用Protocol Buffers(简称protobuf)版本2.5.0,与Java开发语言结合,在JDK1.6环境下进行编译和测试的一个示例项目。Protocol Buffers是Google开发的一种...

    Onlyoffice服务调用Demo-Java版本

    Onlyoffice服务调用Demo-Java版本, ONLYOFFICE Document Server提供文档协作的服务功能,支持Word,Excel和PowerPoint的协作。但是这里告诉我们,需要进行文档管理和存储的二次开发。 Please note, that ONLY...

    Java通过Exchange协议发送和接收邮件

    在IT行业中,电子邮件通信是日常工作中不可或缺的一部分,而Java作为一种广泛应用的编程语言,提供了多种方式来处理邮件的发送和接收。本示例着重讲解如何利用Java结合Microsoft的Exchange协议实现邮件功能,具体...

    jdk,maven,m2eclipse,git,mysql安装笔记

    JDK(Java Development Kit)是开发和运行Java应用程序的基础,它包含了编译器、虚拟机和其他工具。在安装JDK时,首先需要访问Oracle官方网站下载适合操作系统的JDK版本。例如,可以从转到...

    .eml解析,内容直接打印html代码

    javaEmail html 预览 .eml邮件,直接打印html代码,格式与html邮箱预览一样,附件没有写,自行看javaEmail文档,要求JDK1.7、java EE6 LIbraries

    Java词典 Java Dictionary

    安装好JDK后就可以直接运行。 源代码自然在我帖上的文件中。 如果哪位加了功能,改进了,感谢能email一份给我JonsenElizee@163.com<br><br>有什么问题也可以email我。 本人Java一般。。。。。。 ...

    Java开发技术大全(500个源代码).

    示例描述:本章演示如何开始使用JDK进行程序的开发。 HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载Applet的网页文件 第2章 ...

    commons email项目

    在开始之前,你需要确保你已经安装了Java Development Kit (JDK),因为Apache Commons Email是用Java编写的。然后,解压提供的压缩包,你会看到包含vcmail在内的文件,这可能是项目的主类或示例代码。 要使用...

    使用servlet和Java Bean访问MySQL的简单实例

    - 示例路径:`D:\Java\jdk1.5.0_01` 2. **Path**: 添加JDK的bin目录到系统路径中。 - 示例路径:`%JAVA_HOME%\bin` 3. **Classpath**: 设置类路径,包括JDK的工具库以及Tomcat和MySQL相关的库。 - 示例路径:`....

    JAVA邮件API

    支持JAVAJDK1.7及以上版本邮件服务开发,方便快捷!!!

    javamail的jdk打包

    JavaMail 是一个开源的 Java API,它允许开发者在 Java 应用程序中发送和接收电子邮件。这个API提供了全面的电子邮件处理功能,包括SMTP、POP3和IMAP协议的支持。在JavaMail的使用过程中,通常会涉及到两个核心的JAR...

    JavaMail jar包For JDK6.0

    JavaMail是Java编程语言中用于处理邮件服务的API,它为开发者提供了在应用程序中发送、接收和管理电子邮件的能力。在JavaMail 1.6.2版本中,针对JDK 6.0的环境,通常会包含两个核心的jar包:`mail.jar`和`activation...

    Java 开发环境配置指导教程

    1. `JAVA_HOME`:指向JDK的安装目录,例如 `C:\Program Files\Java\jdk1.8.0_271`。 2. `PATH`:在原有路径后添加 `%JAVA_HOME%\bin` 和 `%JAVA_HOME%\jre\bin`,使得系统可以在任何目录下运行Java命令。 在Linux或...

    JDK自带xml解析器dom+sax

    JDK(Java Development Kit)提供了两种内置的XML解析器:DOM(Document Object Model)和SAX(Simple API for XML),它们各有特点,适用于不同的场景。 1. DOM解析XML: DOM解析器将整个XML文档加载到内存中,...

    java反编工具java反编工具

    of the context of a Web browser when JDK is installed. INSTALLATION: The program is for Windows 95, Windows 98, Windows Millennium Edition, Windows NT and Windows 2000. Uninstall previos version of ...

Global site tag (gtag.js) - Google Analytics