⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smtpclient.java

📁 SMTPClient程序
💻 JAVA
字号:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;

public class SMTPClient extends JFrame{

	private JLabel fromLabel=new JLabel("From:");
	private JTextField fromField=new JTextField(40);
	private JLabel toLabel=new JLabel("To:");
	private JTextField toField=new JTextField(40);
	private JLabel subjectLabel=new JLabel("Subject:");	
	private JTextField subjectField=new JTextField(40);
	private JLabel messageLabel=new JLable("Message:/n");
	private JTextArea message=new JTextArea(40,12);
    private JScrollPane jsp=new JScrollPane(message);
	private JButton sendButton=new JButton("Send");
	private JButton clearButton=new JButton("Clear");
	private JButton quitButton=new JButton("Quit");
    
	Public SMTPClient(){
		super("Java MailClient");
		Container contentPane=this.getContentPane();
		contentPane.setLayout(new BorderLayout());
		JPanel labels=new JPanel();
		labels.setLayout(new GridLayout(4,1));
		JPanel fields=new JPanel();
		fields.setLayout(new GridLayout(4,1));
		string from=System.getProperty("mail.from"," ");
		fromField.setText(from);
		labels.add(fromLabel);
		fields.add(fromField);
		labels.add(toLabel);
		fields.add(toField);
		labels.add(subjectLabel);
		fields.add(subjectLabel);
		labels.add(messageLabel);
		Box north=Box.createHorizontalBox();
		north.add(labels);
		north.add(fields);
		contentPane.add(north,BorderLayout.NORTH);
		message.setFont(new Font("Monospaced",Font.PLAIN,12));
		contentPane.add(jsp,BorderLayout.CENTER);
		JPanel buttons=new JPanel();
		buttons.setLayout(new GridLayout(1,3));
		buttons.add(sendButton);
		sendButton.addActionListener(new sendAction());
		buttons.add(clearButton);
		clearButton.addActionListener(new clearAction());
		buttons.add(quitButton);
		quitButton.addActionListener(new quitAction());
		contentPane.add(buttons,BorderLayout.SOUTH);
		this.pack();
	}
	
	class SendAction implements ActionListener{
		public void actionPerformed(ActionEvent evt){
			try{
				properties props=new properties();
				string host=system.getProperty("mail.host"," ");   
				props.put("mail.host",host);
				Session mailConnection=Session.getInstance(props,null);
				final Message msg=new MineMessage(mailConnection);
				Address to=new InternetAddress(toField.getText());
				Address from=new InternetAddress(fromField.getText());
				msg.setContent(message.getText(),"text/plain");
				msg.setFrom(from);
				msg.setRecipient(Message.RecipientType.TO,to);
				msg.setSubject(subjectField.getText());
				Runnable r=new Runnable(){
					public void run(){
						try{
							Transport.send(msg);
						}
						catch (Exception ex){
							ex.printStackTrace();
						}
					}
				}
				Thread t=new Thread(r);
				t.start();
				message.setText(" ");
			}
			  catch(Exception ex){
				ex.printStackTrace();
		    }
		}
	}

    class clearAction implements ActionListener{
		public void actionPerformed(ActionEvent evt){
			fromField.setText(" ");
			toField.setText(" ");
			subjectField.setText(" ");
			message.setText(" ");
		}
    }
 
    class quitAction implements ActionListener{
		public void actionPerformed(ActionEvent evt){
			setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		}	
    }

    public static void main(string[] args){
		SMTPClient client=new SMTPClient();
		client.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		client.show();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -