ยกตัวอย่างโครงการเว็บ โค้ดสามารถปลูกถ่ายได้
ขั้นแรก นำเข้าแพ็คเกจ mail.jar จากนั้นสร้างคลาสของคุณเอง
1:คลาส HTMLSender
คัดลอกรหัสรหัส ดังต่อไปนี้:
แพ็คเกจ com.txq.mail;
นำเข้า java.util.Properties;
นำเข้า javax.mail.Message;
นำเข้า javax.mail.MessagingException;
นำเข้า javax.mail.NoSuchProviderException;
นำเข้า javax.mail.Session;
นำเข้า javax.mail.Transport;
นำเข้า javax.mail.internet.AddressException;
นำเข้า javax.mail.internet.InternetAddress;
นำเข้า javax.mail.internet.MimeMessage;
นำเข้า javax.mail.internet.MimeMultipart;
นำเข้า javax.mail.internet.MimeUtility;
-
-
* @ผู้เขียน ผู้ดูแลระบบ
-
-
HTMLSender ระดับสาธารณะ {
ข้อความ MimeMessage ส่วนตัว
อุปกรณ์ประกอบฉากคุณสมบัติส่วนตัว;
เซสชั่นส่วนตัว;
ชื่อสตริงส่วนตัว = "";
รหัสผ่านสตริงส่วนตัว = "";
HTMLSender สาธารณะ (โฮสต์สตริง ชื่อสตริง รหัสผ่านสตริง)
-
this.name = ชื่อ;
this.password = รหัสผ่าน;
อุปกรณ์ประกอบฉาก = System.getProperties();
อุปกรณ์ประกอบฉาก.put("mail.smtp.host", โฮสต์);
อุปกรณ์ประกอบฉาก.put("mail.smtp.auth", "true");
MyAuthenticator auth = MyAuthenticator ใหม่ (ชื่อ, รหัสผ่าน);
session = Session.getDefaultInstance (อุปกรณ์ประกอบฉาก, รับรองความถูกต้อง);
ข้อความ = MimeMessage ใหม่ (เซสชัน);
MimeMultipart ใหม่ ();
-
โมฆะสาธารณะ setFrom (สตริงจาก)
-
พยายาม
-
message.setFrom(ที่อยู่อินเทอร์เน็ตใหม่(จาก));
-
จับ (AddressException e)
-
e.printStackTrace();
-
จับ (MessagingException e)
-
e.printStackTrace();
-
-
โมฆะสาธารณะ setTo (สตริงเป็น)
-
พยายาม
-
message.setRecipients(Message.RecipientType.TO,InternetAddress.parse(ถึง));
-
จับ (AddressException e)
-
e.printStackTrace();
-
จับ (MessagingException e)
-
e.printStackTrace();
-
-
โมฆะสาธารณะ setSubject (เรื่องสตริง)
-
พยายาม
-
message.setSubject(หัวเรื่อง);
-
จับ (ยกเว้น e)
-
e.printStackTrace();
-
-
โมฆะสาธารณะ setContect (เนื้อหาสตริง)
-
พยายาม
-
message.setContent(content,"text/html;charset=utf-8");
-
จับ (ยกเว้น e)
-
e.printStackTrace();
-
-
บูลีนสาธารณะส่ง ()
-
พยายาม
-
การขนส่ง การขนส่ง = session.getTransport("smtp");
Transport.connect((String)props.get("mail.smtp.host"),ชื่อ,รหัสผ่าน);
Transport.sendMessage(ข้อความ, message.getRecipients(Message.RecipientType.TO));
ขนส่ง.ปิด();
กลับเป็นจริง;
-
จับ (NoSuchProviderException e)
-
e.printStackTrace();
กลับเท็จ;
-
จับ (MessagingException e)
-
e.printStackTrace();
กลับเท็จ;
-
-
-
2: คลาส MyAuthenticator
คัดลอกรหัสรหัส ดังต่อไปนี้:
แพ็คเกจ com.txq.mail;
นำเข้า javax.mail.Authenticator;
นำเข้า javax.mail.PasswordAuthentication;
MyAuthenticator คลาสสาธารณะขยาย Authenticator {
ชื่อสตริง;
รหัสผ่านสตริง;
MyAuthenticator สาธารณะ (ชื่อสตริง, รหัสผ่านสตริง)
-
this.name = ชื่อ;
this.password = รหัสผ่าน;
getPasswordAuthentication();
-
ป้องกันรหัสผ่านการรับรองความถูกต้อง getPasswordAuthentication()
-
ส่งคืน PasswordAuthentication ใหม่ (ชื่อ, รหัสผ่าน);
-
-
3: คลาส MailAction
คัดลอกรหัสรหัส ดังต่อไปนี้:
แพ็คเกจ com.txq.action;
นำเข้า java.io.PrintWriter;
นำเข้า com.opensymphony.xwork2.ActionSupport;
นำเข้า com.txq.mail.HTMLSender;
MailAction ระดับสาธารณะขยาย ActionSupport {
อีเมลสตริงส่วนตัว
สตริงสาธารณะ sendEmail(){
//ตัวแทนโฮสต์-ซีน่า
โฮสต์สตริง = "smtp.sina.cn";
//บัญชี-บัญชีSina
ชื่อสตริง = "followmusic";
//รหัสผ่าน-รหัสผ่าน Sina
รหัสผ่านสตริง = "followmusic";
//สร้างวัตถุอีเมล
เมล HTMLSender = HTMLSender ใหม่ (โฮสต์, ชื่อ, รหัสผ่าน);
//ส่งบัญชี
mail.setFrom("[email protected]");
//บัญชีเมล์
mail.setTo("[email protected]");
//หัวเรื่องอีเมล์
mail.setSubject("ดอกเบี้ยเต่า");
//เนื้อหาอีเมล
mail.setContect("เพื่อนของคุณชวนคุณมาค้นหาความสนใจ~");
ถ้า(mail.send())
-
คืนความสำเร็จ;
-
อื่น
-
กลับ "ข้อผิดพลาด";
-
-
สตริงสาธารณะ getEmail() {
ส่งอีเมลกลับ;
-
setEmail เป็นโมฆะสาธารณะ (อีเมลสตริง) {
this.email = อีเมล;
-
-