服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 核心技术 > SwingAwtApplet > 查看文档

Java Applet如何自动发e-mail

  import java.awt.*;
  
  import java.applet.*;
  
  import java.net.*;
  
  import java.io.*;
  
  public class Javamail extends Applet {
  
  private int SMTP_PORT = 25;
  
  //邮件服务器缺省端口号
  
  private String appletSource = "202.99.96.140";
  
  //作者邮件服务器IP
  
  private TextArea MsgArea;
  
  private TextField senderField, recipientField, hostField;
  
  public void init() {
  
  setLayout(new BorderLayout());
  
  Panel fields = new Panel();
  
  fields.setLayout(new GridLayout(3, 1));
  
  Panel recPanel = new Panel();
  
  recPanel.setLayout(new GridLayout(2, 1));
  
  recPanel.add(new Label("Recipient"));
  
  recipientField = new TextField("zffan");
  
  // 作 者 邮 件 服 务 器 用 户 名
  
  recPanel.add(recipientField);
  
  fields.add(recPanel);
  
  Panel sendPanel = new Panel();
  
  sendPanel.setLayout(new GridLayout(2, 1));
  
  sendPanel.add(new Label("Sender"));
  
  senderField = new TextField("Your Name");
  
  // 由 读 者 填 其 用 户 名
  
  sendPanel.add(senderField);
  
  fields.add(sendPanel);
  
  Panel hostPanel = new Panel();
  
  hostPanel.setLayout(new GridLayout(2, 1));
  
  hostPanel.add(new Label("Host"));
  
  hostField = new TextField("YourCompany.com");
  
  // 由 读 者 填 其 邮 件 服 务 器IP
  
  hostPanel.add(hostField);
  
  fields.add(hostPanel);
  
  add("North", fields);
  
  MsgArea = new TextArea();
  
  add("Center", MsgArea);
  
  add("South", new Button("SEND"));
  
  }
  
  public boolean handleEvent(Event e) {
  
  if (e.id == Event.WINDOW_DESTROY)
  
  System.exit(0);
  
  return super.handleEvent(e);
  
  }
  
  public boolean action(Event e, Object arg) {
  
  if (arg.equals("SEND"))
  
  sendMsg(senderField.getText(),
  
  recipientField.getText(), hostField.getText());
  
  else
  
  return super.action(e, arg);
  
  return true;
  
  }
  
  
  
  private void sendMsg(String sender, String recipient, String se
  
  
  
  nderHost) {
  
  try { // 与 邮 件 服 务 器 通 信
  
  Socket s = new Socket(appletSource, SMTP_PORT);
  
  PrintStream out = new PrintStream(s.getOutputStream());
  
  MsgArea.selectAll();
  
  out.println("HELO " + senderHost);
  
  //邮件服务器不认证读者所输SMTP是否正确
  
  out.println("MAIL FROM: " + sender);
  
  out.println("RCPT TO: " + recipient);
  
  out.println("DATA");
  
  out.println(MsgArea.getSelectedText());
  
  out.println(".");
  
  out.println("QUIT");
  
  }
  
  catch(Exception e) { System.out.println("Error " + e); }
  
  }
  
  } //Javamail

扫描关注微信公众号