博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java发送邮件 注册成功发送邮件
阅读量:3890 次
发布时间:2019-05-23

本文共 5215 字,大约阅读时间需要 17 分钟。

Java发送邮件

  1. 用Java发送邮件,首先得导入两个jar包;

  2. 我这里是以发送QQ邮箱为例的。

    在这里插入图片描述

  3. 发送一份纯文本的邮件

import com.sun.mail.util.MailSSLSocketFactory;import javax.mail.*;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import java.security.GeneralSecurityException;import java.util.Properties;public class SendMail {
public static void main(String[] args) throws MessagingException, GeneralSecurityException {
//创建配置文件 保存和读取信息 Properties properties = new Properties(); //设置邮件服务器 properties.setProperty("mail.host","smtp.qq.com"); //设置发送协议 properties.setProperty("mail.transport.protocol","smtp"); //设置用户验证 properties.setProperty("mail.smtp.auth","true"); //QQ邮箱要设置一个安全工厂 MailSSLSocketFactory sf = new MailSSLSocketFactory(); sf.setTrustAllHosts(true); properties.setProperty("mail.smtp.ssl.enable","true"); properties.setProperty("mail.smtp.ssl.socketFactory","sf"); Session session = Session.getDefaultInstance(properties, new Authenticator() {
@Override protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("1138954180@qq.com","zuyrcoenqrrfjgff"); } }); //开启debug模式 查看邮件发送情况 session.setDebug(true); //获取连接对象 Transport transport = session.getTransport(); //连接服务器 transport.connect("smtp.qq.com","zuyrcoenqrrfjgff"); //创建一个电子邮件对象 MimeMessage mimeMessage = textMail(session); //发送邮件 transport.sendMessage(mimeMessage,mimeMessage.getAllRecipients()); //关闭传输 transport.close(); } public static MimeMessage textMail(Session session) throws MessagingException {
//创建邮件对象 MimeMessage mimeMessage = new MimeMessage(session); //发送人 mimeMessage.setFrom(new InternetAddress("1138954180@qq.com")); //邮件接收人,可以同时发送给很多人 mimeMessage.setRecipient(Message.RecipientType.TO,new InternetAddress("1138954180@qq.com")); //邮件标题 mimeMessage.setSubject("Hello World!"); //邮件内容 mimeMessage.setContent("java写的发送邮件","text/html;charset=utf-8"); return mimeMessage; }}

注册成功发送邮件

这里需要几个配置文件:User.java:用户实体类RegisterServlet.java:注册的servlet文件register.jsp:注册页面

User.java

public class User {
private String username; private String password; private String email; public User(String username, String password, String email) {
this.username = username; this.password = password; this.email = email; } public String getUsername() {
return username; } public void setUsername(String username) {
this.username = username; } public String getPassword() {
return password; } public void setPassword(String password) {
this.password = password; } public String getEmail() {
return email; } public void setEmail(String email) {
this.email = email; } @Override public String toString() {
return "User{" + "username='" + username + '\'' + ", password='" + password + '\'' + ", email='" + email + '\'' + '}'; }}

RegisterServlet.java

import com.baidu.email.SendEmail;import com.baidu.pojo.User;import java.io.IOException;public class RegisterServlet extends javax.servlet.http.HttpServlet {
private static User user; protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
doGet(request,response); } protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
//设置编码格式 response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8"); //从前端得到姓名和密码 String username = request.getParameter("username"); String password = request.getParameter("password"); String email = request.getParameter("email"); user = new User(username,password,email); new SendEmail().start(); //注册成功 转发到这个页面 request.getRequestDispatcher("info.jsp").forward(request,response); } public static User getUser(){
System.out.println(user); return user; }}

info.jsp

<%--  Created by IntelliJ IDEA.  User: 35158  Date: 2019/7/19  Time: 13:34  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %>    注册页面

注册成功!

register.jsp

<%--  Created by IntelliJ IDEA.  User: 35158  Date: 2019/7/19  Time: 10:39  To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %>    注册

用户名:

密码:

邮件:

web.xml

RegisterServlet
com.baidu.servlet.RegisterServlet
RegisterServlet
/register

在这里插入图片描述在这里插入图片描述

这时,你查看你自己的邮箱,就会有一封邮件啦。

转载地址:http://fhohn.baihongyu.com/

你可能感兴趣的文章
Aapche POI txt 导入excel
查看>>
C语言 ## __VA_ARGS__ 宏
查看>>
C++项目中的extern "C" {}
查看>>
(转)C++中extern “C”含义深层探索
查看>>
【日常小记】linux中强大且常用命令:find、grep
查看>>
Linux多线程编程(不限Linux)
查看>>
C/C++内存泄漏及检测
查看>>
C中的继承和多态
查看>>
linux修改ssh端口和禁止root远程登陆设置
查看>>
What really happens when you navigate to a URL
查看>>
偶遇with ties
查看>>
linux 编译指定库、头文件的路径问题
查看>>
使用gdb调试运行时的程序小技巧
查看>>
linux后端服务程序之信号处理
查看>>
Padding也要小心
查看>>
linux异步IO编程实例分析
查看>>
小组开发环境搭建: apache+ftp+cvs+samba
查看>>
Learning C with gdb
查看>>
不可不知的json库
查看>>
JSON格式解析和libjson使用简介
查看>>