java mail mybatis swing实现邮件发送客户端

这是一个使用Swing、Java Mail和MyBatis实现的邮件发送客户端。具备自动登录、添加邮箱账户、发送HTML邮件、群发邮件及发送附件等功能。程序采用Maven管理依赖,并在Windows环境下使用JDK11和IntelliJ IDEA开发。尽管代码量不大,但功能封装规范,适合学习和参考。在使用网易邮箱时可能需要特殊设置。
摘要由CSDN通过智能技术生成
java mail mybatis swing实现邮件发送客户端

说明:
这是一个使用swing写出的java发送邮件的客户端,程序中实现了自动登录、添加邮箱账户、发送html邮件、群发邮件、发送附件的功能。
该程序使用maven进行项目依赖管理。
虽然该程序的代码量不多,但较规范地封装了各功能代码,可供学习和参考使用。

运行效果:
在这里插入图片描述
在这里插入图片描述

使用到的maven依赖:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.13</version>
</dependency>

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.0</version>
</dependency>

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.12</version>
    <scope>test</scope>
</dependency>

<dependency>
    <groupId>javax.activation</groupId>
    <artifactId>activation</artifactId>
    <version>1.1</version>
</dependency>

<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.4</version>
</dependency>

<dependency>
    <groupId>com.sun.mail</groupId>
    <artifactId>javax.mail</artifactId>
    <version>1.4.4</version>
</dependency>

思路:
监听swing按钮点击事件,执行相应的功能。

编译环境:
windows、jdk11、idea2020

示例代码:
如果您想要查看该项目的完整代码,请私信我发给您。

Main主类

package baijiaming.config;

import baijiaming.dao.LoginDao;
import baijiaming.entity.EmailUser;
import baijiaming.util.Tool;
import baijiaming.window.LoginWindow;

import java.util.List;

public class Main {
   
    public static void main(String[] args) {
   
        Tool.databaseVisit(session -> {
   
            LoginDao loginDao = session.getMapper(LoginDao.class);
            List<EmailUser> userList = loginDao.selectAll();
            if (userList.size() == 0)
                new LoginWindow(false);     // 数据库中没有信息时显示添加邮箱界面
            else {
   
                EmailUser email = userList.get(0);
                new LoginWindow(email.getEmail_user(), email.getPassword());      // 数据库中有信息时显示登录界面
            }
        });
    }
}

LoginWindow登录窗口类

package baijiaming.window;

import baijiaming.dao.LoginDao;
import baijiaming.email.Email;
import baijiaming.entity.EmailUser;
import baijiaming.util.Tool;

import javax.swing.*;
import java.util.regex.Pattern;

public class LoginWindow extends MyWindow {
   

    private JButton addButton;
    private JButton loginButton;
    private JTextField emailField;
    private JPasswordField passwordField;

    // 界面初始化
    @Override
    protected void initWindow() {
   
        addButton = new JButton("添加邮箱");
        final int addBtnWidth = 100;
        addButton.setBounds(Tool.getCenterX(addBtnWidth), 350, addBtnWidth, 48);
        addButton.setFont(fontSize16);

        loginButton = new JButton("登录");
        loginButton.setBounds(Tool.getCenterX(addBtnWidth), 350, addBtnWidth, 48);
        loginButton.setFont(fontSize16);

        final int fieldWidth = 240;
        final int fieldCenterX = Tool.getCenterX(fieldWidth);
        emailField = new JTextField();
        emailField.setBounds(fieldCenterX, 200, fieldWidth, 30);
        emailField.setFont(fontSize14);

        passwordField = new JPasswordField();
        passwordField.setBounds(fieldCenterX, 280, fieldWidth, 30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值