jfinalQ開發教程07-qiao-util.jar:郵件和簡訊
阿新 • • 發佈:2018-11-01
郵件服務
郵件服務是大部分系統中不可或缺的一個服務,jfinalQ中採用mail.jar實現傳送郵件功能。
QMailUtil
com.uikoo9.util.function.QMailUtil對mail.jar的常見操作做了封裝,如下:
public class QMailUtil { private static final Logger logger = LoggerFactory.getLogger(QMailUtil.class); /** * 傳送郵件,通用 * @param mailInfo 郵件資訊 * @param isHtml 是否html格式 * @return 結果 */ public static boolean sendMail(String from, String to, String title, String content, boolean isHtml){ } /** * 傳送郵件,普通 * @param mailInfo 郵件資訊 * @return 結果 */ public static boolean sendTextMail(String from, String to, String title, String content){ return sendMail(from, to, title, content, false); } /** * 傳送郵件,html * @param mailInfo 郵件資訊 * @return 結果 */ public static boolean sendHtmlMail(String from, String to, String title, String content){ return sendMail(from, to, title, content, true); } /** * 生成一個郵件訊息,內部使用 * @param mailInfo 郵件資訊 * @param isHtml 是否html格式 * @return 郵件訊息 */ private static Message generateMailMessage(String from, String to, String title, String content, boolean isHtml){} }
大概就是有一個生成郵件訊息方法,傳送郵件(普通,html)方法。
企業郵箱
有了這個util之後,你還需要一個企業郵箱,個人推薦163的企業郵箱,使用和介面都比較簡單。
然後你需要在config.properties中配置mail相關資訊:
# mail properties
mail.smtp.host=smtp.ym.163.com
mail.smtp.port=25
mail.smtp.auth=true
mail.user.username=
mail.user.password=
mail.user.from=
一段示例
下面是一段傳送郵箱校驗的程式碼:
private boolean sendMail(String usermail){ try { String title = "uikoo9.com-註冊確認"; String token = QEncodeUtil.md5Encrypt(usermail + QDateUtil.format(new Date(), "yyyyMMdd")); String url = "http://uikoo9.com/reg/regConfirm?mail=" + usermail + "&token=" + QEncodeUtil.urlEncode(token); StringBuilder sb = new StringBuilder(); sb.append("歡迎使用“uikoo9.com”<br/><br/>"); sb.append("請點選確認連結:<a href=\"" + url + "\" target=\"_blank\">" + url + "</a><br/><br/>"); sb.append("確認連結有效期:1天<br/><br/>"); sb.append("系統郵件,請勿回覆"); return QMailUtil.sendHtmlMail(from, usermail, title, sb.toString()); } catch (Exception e) { logger.error(QStringUtil.fromException(e)); return false; } }
簡訊服務
雖然人們使用簡訊的頻率日漸減少,但是各種系統和app中簡訊校驗卻必不可少,
與mail服務免費不同,sms服務一般都是收費的,而且都必須有企業認證,
這裡推薦一個不需要企業認證的sms服務,速度還是比較快的,收費也相對較低,
中國網建sms簡訊服務:http://sms.webchinese.cn/Login.shtml
實現
mail服務需要單獨的jar,這裡只需要模仿http請求,請求服務平臺的介面即可。
sms相關操作已經封裝到:com.uikoo9.util.external.QSMSUtil中,
程式碼比較簡單,就不列舉了。
注意
同樣的需要在config.properties中新增sms相關資訊,如下:
# sms properties sms.url=http://utf8.sms.webchinese.cn/ sms.uid= sms.key= sms.to= sms.sign=
另外還有一點注意的是,sms服務一般需要你向服務商申請固定的模版,
你傳送簡訊只能在這些模版中選擇。
jfinalQ2.0
原始碼:https://github.com/uikoo9/jfinalQ
更多精彩內容:http://uikoo9.com/
求打賞(長按圖片即可識別)~ |
捐助列表:http://uikoo9.com/donate/ |