您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

基于Java如何实现简单的邮件群发功能?

2026/1/8 2:52:54发布15次查看
pom文件引入第三方依赖 <dependency> <groupid>javax.mail</groupid> <artifactid>mail</artifactid> <version>1.4</version> </dependency> <!--lombok--> <dependency> <groupid>org.projectlombok</groupid> <artifactid>lombok</artifactid> <optional>true</optional> </dependency>
java代码如下 import lombok.data; import javax.mail.message.recipienttype;import javax.mail.messagingexception;import javax.mail.session;import javax.mail.transport;import javax.mail.internet.internetaddress;import javax.mail.internet.mimemessage;import java.io.ioexception;import java.io.inputstream;import java.util.arraylist;import java.util.list;import java.util.properties; /** * created by tarzan liu on 2021/5/9. */public abstract class emailutil { private static final session session; private static final emailauthenticator authenticator; static { inputstream inputstream = null; try { inputstream = emailutil.class.getresourceasstream("/email.properties"); properties properties = new properties(); properties.load(inputstream); authenticator = new emailauthenticator(); string username = properties.getproperty("email.username"); authenticator.setusername(username); string password = properties.getproperty("email.password"); authenticator.setpassword(password); string smtphostname = "smtp." + username.split("@")[1]; properties.put("mail.smtp.auth", "true"); properties.put("mail.smtp.host", smtphostname); session = session.getinstance(properties, authenticator); } catch (exception e) { throw new runtimeexception("init error."); } finally { if (inputstream != null) { try { inputstream.close(); } catch (ioexception e) { e.printstacktrace(); } } } } private emailutil() { } /** * 群发邮件方法 */ private static void masssend(list<string> recipients, simpleemail email) throws messagingexception { mimemessage message = new mimemessage(session); message.setfrom(new internetaddress(authenticator.getusername())); internetaddress[] addresses = new internetaddress[recipients.size()]; for (int index = 0; index < recipients.size(); index ++) { addresses[index] = new internetaddress(recipients.get(index)); } message.setrecipients(recipienttype.to, addresses); message.setsubject(email.getsubject()); message.setcontent(email.getcontent(), "text/html;charset=utf-8"); transport.send(message); } /** * 发送邮件 */ public static void send(string recipient, simpleemail email) throws messagingexception { list<string> recipients = new arraylist<>(); recipients.add(recipient); masssend(recipients, email); } //可以单独建一个类 @data public static class simpleemail { private string subject; private string content; } public static void main(string[] args) throws exception { simpleemail simpleemail = new simpleemail(); simpleemail.setsubject("今天你学习了么?"); simpleemail.setcontent("今天你写博客了么"); send("1334512682@qq.com", simpleemail); }}
email.properties 系统邮箱配置
email.username=###@163.com
email.password=###
你的邮箱账号和密码,也可以省去配置文件,直接把账号密码写死在代码。
运行测试右键run 运行主方法。
将发送的邮箱绑定到微信上,还能实现微信提醒功能!
以上就是基于java如何实现简单的邮件群发功能?的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product