简单的邮件客户端

运行界面如下:

源代码如下:(本程序使用的是Merak mail server)


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

package com.zzk;

 

/**

 * @author 任文超

 * @version 1.0

 * */

import java.awt.Color;

import java.awt.EventQueue;

import java.awt.Font;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.Date;

import java.util.Properties;

import javax.mail.Message;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

import javax.swing.JTextField;

 

public class SendMailFrame extends JFrame {

    private JTextArea ta_text;

    private JTextField tf_title;

    private JTextField tf_send;

    private JTextField tf_receive;

    private Session session;// 定义Session对象

    private String sendHost = "localhost";// 定义发送邮件的主机

    private String sendProtocol="smtp";// 定义使用的发送协议

    public static void main(String args[]) {

        EventQueue.invokeLater(new Runnable() {

            public void run() {

                try {

                    SendMailFrame frame = new SendMailFrame();

                    frame.init();

                    frame.setVisible(true);

                catch (Exception e) {

                    e.printStackTrace();

                }

            }

        });

    }

     

    /**

     * Create the frame

     */

    public SendMailFrame() {

        super();

        setTitle("发送邮件窗体");

        getContentPane().setLayout(null);

        setBounds(100100439299);

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 

        final JLabel label = new JLabel();

        label.setForeground(new Color(00255));

        label.setFont(new Font("", Font.BOLD, 22));

        label.setText("发送电子邮件");

        label.setBounds(1441018524);

        getContentPane().add(label);

 

        final JLabel label_1 = new JLabel();

        label_1.setText("收件人地址:");

        label_1.setBounds(22428518);

        getContentPane().add(label_1);

 

        tf_receive = new JTextField();

        tf_receive.setBounds(1134028722);

        getContentPane().add(tf_receive);

 

        final JLabel label_2 = new JLabel();

        label_2.setText("发件人地址:");

        label_2.setBounds(22687818);

        getContentPane().add(label_2);

 

        tf_send = new JTextField();

        tf_send.setBounds(1136628722);

        getContentPane().add(tf_send);

 

        final JLabel label_3 = new JLabel();

        label_3.setText("主    题:");

        label_3.setBounds(32926618);

        getContentPane().add(label_3);

 

        tf_title = new JTextField();

        tf_title.setBounds(1139428722);

        getContentPane().add(tf_title);

 

        final JLabel label_4 = new JLabel();

        label_4.setText("正    文:");

        label_4.setBounds(341286618);

        getContentPane().add(label_4);

 

        final JScrollPane scrollPane = new JScrollPane();

        scrollPane.setBounds(11312828791);

        getContentPane().add(scrollPane);

 

        ta_text = new JTextArea();

        scrollPane.setViewportView(ta_text);

 

        final JButton btn_send = new JButton();

        btn_send.addActionListener(new ActionListener() {

            public void actionPerformed(final ActionEvent e) {

                String fromAddr = tf_send.getText().trim();

                String toAddr = tf_receive.getText().trim();// 真实存在的目标邮件地址

                String title = tf_title.getText().trim();

                String text = ta_text.getText().trim();

                try {

                    sendMessage(fromAddr, toAddr, title, text);

                catch (Exception e1) {

                    e1.printStackTrace();

                }

            }

        });

        btn_send.setText("发    送");

        btn_send.setBounds(1442257828);

        getContentPane().add(btn_send);

 

        final JButton btn_exit = new JButton();

        btn_exit.addActionListener(new ActionListener() {

            public void actionPerformed(final ActionEvent e) {

                System.exit(0);

            }

        });

        btn_exit.setText("退    出");

        btn_exit.setBounds(2792257828);

        getContentPane().add(btn_exit);

    }

    public void init() throws Exception {

        Properties props = new Properties();// 创建属性对象

        props.put("mail.transport.protocol", sendProtocol);// 指定邮件传输协议

        props.put("mail.smtp.class""com.sun.mail.smtp.SMTPTransport");//指定传输协议使用的类

        props.put("mail.smtp.host", sendHost);// 定义发送邮件的主机

        session = Session.getDefaultInstance(props);// 创建Session对象

    }

    /**

     * @param fromAddr 发送者

     * @param toAddr 接收者

     * @param title 主题

     * @param text 内容

     * @throws Exception 异常

     */

    public void sendMessage(String fromAddr,String toAddr,String title,String text) throws Exception {

        Message msg = new MimeMessage(session);// 创建Message对象

        InternetAddress[] toAddrs = InternetAddress.parse(toAddr,false);// 创建接收方的InternetAddress对象

        msg.setRecipients(Message.RecipientType.TO, toAddrs);// 指定接收方

        msg.setSentDate(new Date());// 指定接发送日期

        msg.setSubject(title);// 设置主题

        msg.setFrom(new InternetAddress(fromAddr));// 指定发送者

        msg.setText(text);// 指定发送内容

        Transport.send(msg);// 发送邮件

        JOptionPane.showMessageDialog(null"邮件发送成功。");

    }

}

  

时间: 2024-08-02 05:53:10

简单的邮件客户端的相关文章

Outlook Express邮件客户端的自动化配置

在部署一个政府OA系统中的邮件模块时,由于用户全都是五六十岁的老人,邮件客户端统一采用Outlook Express,甲方项目经理要求邮件客户端的配置实现全自动化,非常头疼,好不容易才解决,来此与大家分享. 输入分析: 要配置邮件客户端,以下几个输入是必须由用户来完成的: 1.用户名,即PREFIX,@之前的内容 2.域 3.输入密码 存储分析: 用户输入数据的存储位置如下: 1.用户名--存于注册表(明文) 2.域--存于注册表(明文) 3.输入密码--存于注册表(密文) 技术选取: 有了以上

Mac邮件客户端怎么设置

  Mac自带的邮件客户端怎么设置?很多Mac用户可能忽略了这一非常实用的Mac自带软件,对于部分需要经常收发电子邮件的Mac用户来说,系统自带的邮箱可以添加其他的邮箱,无需另外安装第三方的邮件APP,这样不用每次收发邮件都要打开网页了.今天小编就为大家带来Mac下邮件客户端的设置教程,具体的配置方法如下. 1.在Dock栏中找到"邮件",如果没有,则可以打开Finder,进入应用程序选项,打开"邮件"即可. 2.在桌面上方工具栏处点击"邮件"项

使用邮件客户端整合日常信息

1. 起缘 我是被逼出来的... 最开始, 我只是拿 txt2tags 写写文档, 在 Gmail 的 Web 界面看看 CPyUG 而已. 工作中的邮件我先是使用的 Thunderbird 来处理, 虽然我觉得它的搜索功能很难用, 但是收发功能正常也就算了. 后来不知道从什么时候开始, 这东西时不时会出现无法发信的问题, 就是报一个网络错误, 也没有其它信息. 我开始想是不是公司的邮件服务器有问题, 但是同事些都好好的, 哪怕同样是用 Thunderbird 的也没有问题. 我也把问题反映到

Nylas Mail: 一个Linux的免费邮件客户端

有一个经常被提及的问题是 Ubuntu 是否还应该提供默认的电子邮件客户端.就个人而言,我已经很长时间没有使用 Thunderbird 了.我相信这不是一个第一次被问到的问题,但我相信这是一个把它解决掉的很好机会.这是因为日常用户倾向于使用基于网络的客户端,例如 Gmail 或 Outlook 来满足其邮件需求.而对于 Linux 上的经验丰富的用户而言,还有很多可供选择的选项.Geary.Empathy.Evolution 和 Thunderbird 本身已经为很多用户提供了很好的服务,但是我

如何在 Mutt 邮件客户端中使用密文密码

如何在 Mutt 邮件客户端中使用密文密码 Mutt 是一个 Linux/UNIX 终端环境下的开源的邮件客户端.Mutt 以及 Alpine 在 Linux 命令行爱好者中有着最忠诚的追随者,这不是没有原因的.想一下你所期待邮件客户端应有的功能,Mutt 拥有:多协议支持(例如,POP3.IMAP 和 SMTP),S/MIME 和 PGP/GPG 集成,会话线索,颜色标记,可定制宏/快捷键,等等.另外,基于命令行的 Mutt 相比粗重的基于浏览器的邮件客户端(如:Gmail,Ymail)或图形

传百度收购koomail邮件客户端

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 昨天,有消息称,百度已于近日收购了国内使用率较高的遨游浏览器的开发公司.随后,又有消息人士爆料称,除遨游外,百度还收购了酷邮时空 科技公司旗下的koomail邮件客户端. 有分析人士表示:"这是百度推出IM的后续动作,早间就流传百度要推出自己的IM和邮箱服务,现在看来这是百度在为建立互联网帝国向腾讯发起的最大挑战.众所周知,腾讯拥有

Koomail:无需配置POP3即可使用的邮件客户端

下面就Koomail的安装使用做一个简单的介绍. 首先需要我们下载安装一个支持收发邮件http://www.aliyun.com/zixun/aggregation/38308.html">Hotmail/MSN/Live的邮件客户端KooMail. KooMail的配置非常简单,不像其他邮件客户端需要配置POP3等之类的参数,使用KooMail你只需要填写你的邮件帐号和密码,KooMail即可自动为你配置好所有的参数,你只需要确定就可以使用KooMail了. 图一:完成Koomail安装

DeforaOS Mailer 0.1.3发布 桌面邮件客户端

DeforaOS Mailer是一个DeforaOS桌面的http://www.aliyun.com/zixun/aggregation/12490.html">邮件客户端.它只依赖于GTK++ 2.DeforaOS系统和桌面库,支持mbox文件格式,POP3和IMAP4协议,还提供了直接发送电子邮件的程序. DeforaOS定义 DeforaOS主要是实施一个基于微内核的操作系统.主要特性包括:简洁的设计,简单的代码,可用性. DeforaOS Mailer 0.1.3该版本推出了第一个

DeforaOS Mailer 0.1.0发布 桌面邮件客户端

DeforaOS Mailer是一个DeforaOS桌面的http://www.aliyun.com/zixun/aggregation/12490.html">邮件客户端.它只依赖于GTK++ 2.DeforaOS系统和桌面库,支持mbox文件格式,POP3和IMAP4协议,还提供了直接发送电子邮件的程序. DeforaOS定义 DeforaOS主要是实施一个基于微内核的操作系统.主要特性包括:简洁的设计,简单的代码,可用性. DeforaOS Mailer 0.1.0版本支持SSL,当