`
projecttian
  • 浏览: 32711 次
  • 性别: 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算法

    用java编写收发邮件的系统,需要引入两个*.jar, 。这两个*.jar是JDK扩展的jar包,所以需要引入。

    Onlyoffice服务调用Demo-Java版本

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

    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章 ...

    JAVA邮件API

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

    javamail"java发送邮件所需要的包

    java发送邮件所需要的包,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API

    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 ...

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

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

    创建一个Java电子邮件客户端

    Java Development Kit (JDK): 用于编译和运行Java代码。 集成开发环境(IDE):例如Eclipse、IntelliJ IDEA或者VSCode等。 JavaMail库:用于发送和接收电子邮件。 Apache Commons Email库:用于更方便地发送邮件。 ...

    Java-REST-POST-email-Service:基于Java的REST服务器,提供POST电子邮件API以发送电子邮件

    Need JDK7或更高版本Need Apache Maven(Java软件包和构建管理系统) 安装Maven (对于Mac)brew install maven 设置包裹 打开文件src / main / java / usr / keerthy / email / SendGridEmailProvider.java并在...

    Java多商户外贸版正式发布!多语言、国际支付、短信登录等CRMEB-JAVA-ET-V1.0.0(0620)(完整包)

    JDK 1.8 市场保有量最大 redis 缓存框架 mysql 数据库 权限控制到按钮级别 权限安全框架 Spring Security 任务管理 quartz 行为验证码 支持集群部署 2.前端框架 多语言 i18n Vue,Webpack,ElementUI,Uniapp,NuxtJS...

    java遍历特例

    java Map 遍历方法 Map map = new HashMap(); Iterator it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = (Map.Entry) it.next(); Object key = entry.getKey(); ...

    我心飞扬java类加密工具2.1(亲测可用)

    联系email:89002402@qq.com 为了让本共享软件能为中国软件发展做出更大的贡献,请多多宣传本软件,或者转链接下载,谢谢每一位支持共享的同仁! 升级提示: v2.1相比v2.0修改了一个注册bug。 v2.1.2相比v.1修改了...

    浅谈OFBIZ 作者:李心(北京邮电大学)Email:richie.lx@hotmail.com

    为了像我一样的新手们能够对OFBIZ有一个初步的了解,所以我主要从以下三个方面来对OFBIZ ...Java_HOME: E:\jdk1.5.0  PATH: E:\jdk1.5.0\bin;  CLASSPATH: E:\jdk1.5.0\lib\tools.jar;  E:\jdk1.5.0\jre\lib\rt.jar;

    Java web 期末大作业,完成度100%附带文档.

    运行环境:tomcat9+mysql5+maven3.8+jdk8 前端技术:jquery 用以数据处理以及前端验证以及生成验证码等等 Bootstrap 前端界面处理 后端技术:servelt+jsp maven进行jar包和第三方库管理 采用jspsmart进行文件的...

    Java面试宝典2020修订版V1.0.1.doc

    JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类? 63 14、字节流与字符流的区别 63 15、怎么判断指定路径是否为目录 65 16、怎么获取指定路径下的全部文件 65 17、Java怎么读取文件和写入文件 ...

    CRMEB Java【外贸版】多商户系统+PC前端模板,多国语言、国际支付、短信登录等

    JDK 1.8 市场保有量最大 redis 缓存框架 mysql 数据库 权限控制到按钮级别 权限安全框架 Spring Security 任务管理 quartz 行为验证码 支持集群部署 2.前端框架 多语言 i18n Vue,Webpack,ElementUI,Uniapp,NuxtJS...

    javaMail 所需jar包

    这里提供了javamail所需的除jdk以外的jar包

Global site tag (gtag.js) - Google Analytics