① jmail和javamail的區別
以下三段代碼是我的全部代碼,朋友們如果想用,直接復制即可。
我的代碼有三個類:
第一個類:MailSenderInfo.java
Java代碼
package reyo.sdk.mail;
/**
* 發送郵件需要使用的基本信息
*/
import java.util.Properties;
public class MailSenderInfo {
// 發送郵件的伺服器的IP和埠
private String mailServerHost;
private String mailServerPort = "25";
// 郵件發送者的地址
private String fromAddress;
// 郵件接收者的地址
private String toAddress;
// 登陸郵件發送伺服器的用戶名和密碼
private String userName;
private String password;
// 是否需要身份驗證
private boolean validate = false;
// 郵件主題
private String subject;
// 郵件的文本內容
private String content;
// 郵件附件的文件名
private String[] attachFileNames;
/**
* 獲得郵件會話屬性
*/
public Properties getProperties(){
Properties p = new Properties();
p.put("mail.smtp.host", this.mailServerHost);
p.put("mail.smtp.port", this.mailServerPort);
p.put("mail.smtp.auth", validate ? "true" : "false");
return p;
}
public String getMailServerHost() {
return mailServerHost;
}
public void setMailServerHost(String mailServerHost) {
this.mailServerHost = mailServerHost;
}
public String getMailServerPort() {
return mailServerPort;
}
public void setMailServerPort(String mailServerPort) {
this.mailServerPort = mailServerPort;
}
public boolean isValidate() {
return validate;
}
public void setValidate(boolean validate) {
this.validate = validate;
}
public String[] getAttachFileNames() {
return attachFileNames;
}
public void setAttachFileNames(String[] fileNames) {
this.attachFileNames = fileNames;
}
public String getFromAddress() {
return fromAddress;
}
public void setFromAddress(String fromAddress) {
this.fromAddress = fromAddress;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getToAddress() {
return toAddress;
}
public void setToAddress(String toAddress) {
this.toAddress = toAddress;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getContent() {
return content;
}
public void setContent(String textContent) {
this.content = textContent;
}
}
package reyo.sdk.mail;
/**
* 發送郵件需要使用的基本信息
*/
import java.util.Properties;
public class MailSenderInfo {
// 發送郵件的伺服器的IP和埠
private String mailServerHost;
private String mailServerPort = "25";
// 郵件發送者的地址
private String fromAddress;
// 郵件接收者的地址
private String toAddress;
// 登陸郵件發送伺服器的用戶名和密碼
private String userName;
private String password;
// 是否需要身份驗證
private boolean validate = false;
// 郵件主題
private String subject;
// 郵件的文本內容
private String content;
// 郵件附件的文件名
private String[] attachFileNames;
/**
* 獲得郵件會話屬性
*/
public Properties getProperties(){
Properties p = new Properties();
p.put("mail.smtp.host", this.mailServerHost);
p.put("mail.smtp.port", this.mailServerPort);
p.put("mail.smtp.auth", validate ? "true" : "false");
return p;
}
public String getMailServerHost() {
return mailServerHost;
}
public void setMailServerHost(String mailServerHost) {
this.mailServerHost = mailServerHost;
}
public String getMailServerPort() {
return mailServerPort;
}
public void setMailServerPort(String mailServerPort) {
this.mailServerPort = mailServerPort;
}
public boolean isValidate() {
return validate;
}
public void setValidate(boolean validate) {
this.validate = validate;
}
public String[] getAttachFileNames() {
return attachFileNames;
}
public void setAttachFileNames(String[] fileNames) {
this.attachFileNames = fileNames;
}
public String getFromAddress() {
return fromAddress;
}
public void setFromAddress(String fromAddress) {
this.fromAddress = fromAddress;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getToAddress() {
return toAddress;
}
public void setToAddress(String toAddress) {
this.toAddress = toAddress;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getContent() {
return content;
}
public void setContent(String textContent) {
this.content = textContent;
}
}
第二個類:SimpleMailSender.java
Java代碼
package reyo.sdk.mail;
import java.util.Date;
import java.util.Properties;
import javax.mail.Address;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
/**
* 簡單郵件(不帶附件的郵件)發送器
*/
public class SimpleMailSender {
/**
* 以文本格式發送郵件
* @param mailInfo 待發送的郵件的信息
*/
public boolean sendTextMail(MailSenderInfo mailInfo) {
// 判斷是否需要身份認證
MyAuthenticator authenticator = null;
Properties pro = mailInfo.getProperties();
if (mailInfo.isValidate()) {
// 如果需要身份認證,則創建一個密碼驗證器
authenticator = new MyAuthenticator(mailInfo.getUserName(), mailInfo.getPassword());
}
// 根據郵件會話屬性和密碼驗證器構造一個發送郵件的session
Session sendMailSession = Session.getDefaultInstance(pro,authenticator);
try {
// 根據session創建一個郵件消息
Message mailMessage = new MimeMessage(sendMailSession);
// 創建郵件發送者地址
Address from = new InternetAddress(mailInfo.getFromAddress());
// 設置郵件消息的發送者
mailMessage.setFrom(from);
// 創建郵件的接收者地址,並設置到郵件消息中
Address to = new InternetAddress(mailInfo.getToAddress());
mailMessage.setRecipient(Message.RecipientType.TO,to);
// 設置郵件消息的主題
mailMessage.setSubject(mailInfo.getSubject());
// 設置郵件消息發送的時間
mailMessage.setSentDate(new Date());
// 設置郵件消息的主要內容
String mailContent = mailInfo.getContent();
mailMessage.setText(mailContent);
// 發送郵件
Transport.send(mailMessage);
return true;
} catch (MessagingException ex) {
ex.printStackTrace();
}
return false;
}
② 有沒有人有在java web項目中應用jmail的實例啊,練習文檔也行。
給你一個案例自檢看著改一下就是BS版的了!
③ java mail 連接郵件伺服器
不知有幫助沒有了
<%@ page
import=" javax.mail.*, javax.mail.internet.*, javax.activation.*,java.util.*"
%>
<html>
<head>
<TITLE>JSP meets JavaMail, what a sweet combo.</TITLE>
</HEAD>
<BODY>
<%
try{
Properties props = new Properties();
Session sendMailSession;
Store store;
Transport transport;
sendMailSession = Session.getInstance(props, null);
props.put("mail.smtp.host", "smtp.jspinsider.com");
Message newMessage = new MimeMessage(sendMailSession);
newMessage.setFrom(new InternetAddress(request.getParameter("from")));
newMessage.setRecipient(Message.RecipientType.TO, new InternetAddress(request.getParameter("to")));
newMessage.setSubject(request.getParameter("subject"));
newMessage.setSentDate(new Date());
newMessage.setText(request.getParameter("text"));
transport = sendMailSession.getTransport("smtp");
transport.send(newMessage);
%>
<P>Your mail has been sent.</P>
<%
}
catch(MessagingException m)
{
out.println(m.toString());
}
%>
</BODY>
</HTML>
④ java開發outlook
用java來連接郵件伺服器,這個和outlook無關,官方工具是JavaMail,可以在oracle官網上下載相關jar包和說明文檔,第三方常見的工具是jmail,jmail是歷史悠久的伺服器端收發郵件的工具。網上樣例和資料都很多。至於過濾內容JavaMail應該有提供按發件人或內容下載郵件的api。
⑤ java script發送電子郵件功能
ASP實現在線發送郵件
要做在線發郵件首先要該伺服器支持jamil組件(現在的空間商基本上都支持),如果在自己機子上測試的時候到網上去找個jmail安裝一個就行了,記住本程序只適用於4.2以後的版本!
<%
dim jmail
set jmail=server.createobject("Jmail.message")
jmail.silent=true
jmail.charset="gb2312"
jmail.fromname="發件人名稱" '這里是發件人名稱,可以從資料庫或表單中取值
jmail.from="發件人郵箱" '這里是發件人郵箱,可以從資料庫或表單中取值,但格式一定要正確
jmail.addrecipient "收件人郵箱地址","收件人姓名"
jmail.subject="發送郵件標題" '該值可以從資料庫或表單中取值
jmail.mailserverusername="smtp伺服器登錄用戶名" '郵件發送伺服器登錄名稱
jmail.mailserverpassword="smtp伺服器登錄密碼" '郵件發送伺服器登錄密碼
jmail.maildomain="郵件伺服器域名" '郵件發送伺服器域名
sendok=jmail.send("smtp伺服器名") 'smtp伺服器名稱
if sendok then
response.write "恭喜您,郵件發送成功"
else
response.write "對不起,郵件發送失敗,可能由於伺服器登錄設置配置不當造成或填寫的信息有誤,請確認正確後再進行發送!"
end if
%>
上面就是利用jmail發送郵件的主要代碼
下面還有一個html頁面就是用來填寫發送信息的
<html>
<head>
<title>小妖——在線發送郵件</title>
<meta http-equiv="content-type=" content="text/html; charset=gb2312">
</head>
<body>
<form method="post" action="">
發件人名稱:<input type="text" name="fname"><br>
發件人郵箱:<input type="text" name="femail"><br>
收件人名稱:<input type="text" name="tname"><br>
收件人郵箱:<input type="text" name="temail"><br>
郵件標題:<input type="text" name="title"><br>
郵件內容:<textarea rows="9" cols="40" name="content"></textarea><br>
<div align="center"><input type="submit" name="submit" value="/blog/發送"></div>
</form>
</body>
</html>
已經全部結束了,上面那個發送郵件的asp代碼中的注釋部分可以用表單值代替,不過最好寫成先把值賦給一個變數,如:title=request.form("title"),然後把注釋部份用title代替,一但用了變變數賦值時就要把jmail.subject=""這對引號去掉了可以直接寫成jmail.subject=title就OK了。
⑥ 我寫的javaMail發送郵件在本地windows系統下可以實現,怎麼上傳到linux伺服器就發送不了郵件了
JMail需要調用dll,在linux環境下不具有運行環境,可以直接用java自帶的mail包,具體例子可以參考
http://www.blogjava.net/wangfun/archive/2009/04/15/265748.html
⑦ html中如何使文本域中用戶所填寫的信息發送至指定郵箱
後台獲取用戶填寫的信息後,寫一個發送郵件的程序,看你用什麼語言寫了,
jmail是java的郵件組件,你如果會java的話,我可以給你傳一本電子書。要實現你的功能的話,大概是這樣:開發一套簡單的web服務,用戶輸入數據提交到後台,通過開發的郵件模塊發送到你的EMAIL里。郵件模塊的開發,網上有現成的你可以直接拿來用,想自己學學開發也行
⑧ 怎麼用java發送收發郵件並且支持進度顯示
使用jmail這個第三方組件。jmail是一個第三方郵件操作組件,通常位於web伺服器端,和站點程序緊密配合來接收及提交郵件到郵件伺服器的控制項,讓網站擁有發送郵件既接收郵件的功能。
http://www.javaeye.com/topic/213005
參考示例如上
⑨ Java中如何用JMail實現郵箱注冊啊
有個發送郵件的工具包
packagecom.oceanlive.mail.utils;
importjava.io.IOException;
importjavax.mail.MessagingException;
importjavax.mail.Session;
importorg.junit.Test;
publicclassMailUtilsDemo{
@Test
publicvoidfun()throwsMessagingException,IOException{
//創建一個Mail類的對象,參數指定發件人和收件人
Mailmail=newMail("[email protected]","[email protected]");
mail.setSubject("還是測試郵件");//設置主題
mail.setContent("這是正文,不是垃圾郵件!");//設置正文
//創建Session對象,需要三個參數:主機名、用戶名、密碼
Sessionsession=MailUtils.createSession("smtp.163.com",
"用戶名(就是@符號之前的東西)","密碼");
//發郵件,需要session和Mail對象
MailUtils.send(session,mail);
}
}