Mengambil proyek web sebagai contoh, kodenya dapat ditransplantasikan
Pertama, impor paket mail.jar, lalu buat kelas Anda sendiri
1: Kelas HTMLSender
Copy kode kodenya sebagai berikut:
paket com.txq.mail;
impor java.util.Properti;
impor javax.mail.Pesan;
impor javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
impor javax.mail.Sesi;
impor javax.mail.Transportasi;
impor javax.mail.internet.AddressException;
impor javax.mail.internet.InternetAddress;
impor javax.mail.internet.MimeMessage;
impor javax.mail.internet.MimeMultipart;
impor javax.mail.internet.MimeUtility;
/**
*
* @penulis Administrator
*
*/
HTMLSender kelas publik {
pesan MimeMessage pribadi;
alat peraga Properti pribadi;
sesi Sesi pribadi;
nama String pribadi = "";
kata sandi String pribadi = "";
HTMLSender publik (String host, Nama string, Kata sandi string)
{
ini.nama = nama;
this.password = kata sandi;
props = Sistem.getProperties();
props.put("mail.smtp.host", tuan rumah);
props.put("mail.smtp.auth","benar");
MyAuthenticator auth = new MyAuthenticator(nama, kata sandi);
sesi = Sesi.getDefaultInstance(props,auth);
pesan = MimeMessage baru(sesi);
MimeMultipart baru();
}
kekosongan publik setFrom(String dari)
{
mencoba
{
message.setFrom(Alamat Internet baru(dari));
}
tangkapan (AddressException e)
{
e.printStackTrace();
}
menangkap (MessagingException e)
{
e.printStackTrace();
}
}
kekosongan publik setTo(String ke)
{
mencoba
{
pesan.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to));
}
tangkapan(AddressException e)
{
e.printStackTrace();
}
menangkap(MessagingException e)
{
e.printStackTrace();
}
}
public void setSubject (String subjek)
{
mencoba
{
pesan.setSubject(subjek);
}
menangkap (Pengecualian e)
{
e.printStackTrace();
}
}
public void setContect (Konten string)
{
mencoba
{
pesan.setContent(content,"text/html;charset=utf-8");
}
menangkap (Pengecualian e)
{
e.printStackTrace();
}
}
pengiriman boolean publik()
{
mencoba
{
Transportasi transportasi = session.getTransport("smtp");
transport.connect((String)props.get("mail.smtp.host"),nama,kata sandi);
transport.sendMessage(pesan, pesan.getRecipients(Message.RecipientType.TO));
transport.close();
kembali benar;
}
menangkap(NoSuchProviderException e)
{
e.printStackTrace();
kembali salah;
}
menangkap(MessagingException e)
{
e.printStackTrace();
kembali salah;
}
}
}
2: Kelas MyAuthenticator
Copy kode kodenya sebagai berikut:
paket com.txq.mail;
impor javax.mail.Authenticator;
impor javax.mail.PasswordAuthentication;
kelas publik MyAuthenticator memperluas Authenticator{
nama string;
kata sandi string;
MyAuthenticator publik (Nama string, kata sandi string)
{
ini.nama = nama;
this.password = kata sandi;
getPasswordAuthentication();
}
dilindungi PasswordAuthentication getPasswordAuthentication()
{
kembalikan Otentikasi Kata Sandi baru (nama, kata sandi);
}
}
3: kelas MailAction
Copy kode kodenya sebagai berikut:
paket com.txq.action;
impor java.io.PrintWriter;
impor com.opensymphony.xwork2.ActionSupport;
impor com.txq.mail.HTMLSender;
kelas publik MailAction memperluas ActionSupport {
email String pribadi;
String publik kirimEmail(){
//Agen tuan rumah-Sina
String host = "smtp.sina.cn";
//Akun-Akun Sina
String nama = "ikuti musik";
//Kata Sandi-Kata sandi Sina
String kata sandi = "ikuti musik";
//Buat objek email
HTMLSender mail = HTMLSender baru (host, nama, kata sandi);
//Mengirim akun
mail.setFrom("[email protected]");
//akun email
mail.setTo("[email protected]");
//Subjek email
mail.setSubject("Minat Tao");
//Konten email
mail.setContect("Teman Anda mengundang Anda untuk datang dan mencari minat~");
if(mail.kirim())
{
kembali SUKSES;
}
kalau tidak
{
kembalikan "kesalahan";
}
}
String publik getEmail() {
mengembalikan email;
}
public void setEmail(String email) {
this.email = email;
}
}