1. 程式人生 > >JDBC的配置文件,郵件,密碼加密工具類

JDBC的配置文件,郵件,密碼加密工具類

協議 登錄驗證 substring mon smtp getc getclass authent protoc

配置文件

url=jdbc:mysql:///sys
className=com.mysql.jdbc.Driver
username=root
password=123456
maxActive=5
maxWait=5000
initSize=3

import java.io.IOException;
import java.security.MessageDigest;
import java.util.Properties;
import java.util.UUID;

import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;

import org.apache.commons.dbcp.BasicDataSource;

import sun.misc.BASE64Encoder;

public class JdbcUtils {

//配置文件的加載
public static BasicDataSource ds;
static{
Properties p = new Properties();
try {
p.load(JdbcUtils.class.getClassLoader().getResourceAsStream("properties/Myconfig.properties"));
ds=new BasicDataSource();
ds.setUrl(p.getProperty("url"));
ds.setUsername(p.getProperty("username"));
ds.setPassword(p.getProperty("password"));
ds.setDriverClassName(p.getProperty("className"));
ds.setMaxActive(Integer.parseInt(p.getProperty("maxActive")));
ds.setMaxWait(Long.parseLong(p.getProperty("maxWait")));
ds.setInitialSize(Integer.parseInt(p.getProperty("initSize")));
} catch (IOException e) {

e.printStackTrace();
System.out.println("文件加載失敗.......");
}
}

public static BasicDataSource getDataSource(){

return ds;
}
//密碼加密


public static String md5(String str){
String md5Str=null;
try {
MessageDigest md5 = MessageDigest.getInstance("MD5");
BASE64Encoder encode = new BASE64Encoder();
md5Str=encode.encode(md5.digest(str.getBytes("utf-8")));
md5Str=md5Str.substring(1,md5Str.length()-5);
StringBuilder sb = new StringBuilder(md5Str);
md5Str=sb.reverse().toString();

} catch (Exception e) {
e.printStackTrace();
}
return md5Str;


}

//郵件的發送


// email 收件人的地址
// content 發送的郵件內容信息

public static void sendMail(String email,String content){
try{
//創建一個程序與郵件服務器會話對象Session
Properties props = new Properties();
//設置發送的協議
props.setProperty("mail.transport.protocol", "SMTP");
//設置發送郵件的服務器
props.setProperty("mail.host", "smtp.sina.com");
props.setProperty("mail.smtp.auth", "true");
//創建驗證器
Authenticator auth = new Authenticator() {

public PasswordAuthentication getPasswordAuthentication(){
//設置發送人的賬號和密碼
return new PasswordAuthentication("[email protected]", "");
}
};
//通過服務器的配置和傳進去的登錄驗證對象來創建一個會話
//通過該會話來進行發送郵件
Session session = Session.getInstance(props, auth);
//2.創建一個Message,他相當於是郵件內容
Message message = new MimeMessage(session);
//設置發送者
message.setFrom(new InternetAddress("[email protected]"));
//設置發送方式和接受者
message.setRecipient(RecipientType.TO, new InternetAddress(email));
//設置郵件發送主題
message.setSubject("用戶激活");
//設置郵件內容
message.setContent(content,"text/html;charset=utf-8");
//3創建TransPort用於將郵件發送
Transport.send(message);

}catch(Exception e){
System.out.println("郵件發送失敗");

}


}

// 隨機的生成一個UUID的字符串
public static String getUUIDStr() {

UUID uuid = UUID.randomUUID();
return uuid.toString().replaceAll("-", "").toUpperCase();
}

}

JDBC的配置文件,郵件,密碼加密工具類