mybatis的配置:
properties的配置: 代码:
/*
* Copyright (C), 2002-2014, 苏宁易购电子商务有限公司
* FileName: MyBatisSessionFactory.java
* Author: yezq
* Date: 2014-8-4 上午09:32:27
* Description: //模块目的、功能描述
* History: //修改记录
* <author> <time> <version> <desc>
* 修改人姓名 修改时间 版本号 描述
*/
package com.suning.finance.entity.batctrl;
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
import java.util.Properties;
import javax.sql.DataSource;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.apache.commons.codec.binary.Base64;
import org.apache.ibatis.datasource.pooled.PooledDataSource;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.mapping.Environment;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.apache.ibatis.transaction.TransactionFactory;
import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
public class MyBatisSessionFactory {
/**
* session工厂
*/
private final static SqlSessionFactory sqlSessionFactory;
/**
* 日志类
*/
private static Logger logger = LoggerFactory.getLogger(MyBatisSessionFactory.class);
static {
String resource = "mybatis-configuration.xml";
//Reader reader = null;
InputStream inputStream = null;
Properties props = new Properties();
try {
//reader = Resources.getResourceAsReader(resource);
InputStream in = Resources.getResourceAsStream("batch.properties");
props.load(in);
String url= props.getProperty("jdbc.url");
String username= props.getProperty("jdbc.username");
String password= props.getProperty("jdbc.password");
logger.debug("befor url -> "+url);
logger.debug("befor username -> "+username);
logger.debug("befor decode -> "+password);
byte[] b = Base64.decodeBase64(password.getBytes());
String decode = new String(b);
props.put("url",url);
props.put("username",username);
props.put("password",decode);
logger.debug("after url -> "+url);
logger.debug("after username -> "+username);
logger.debug("after decode -> "+decode);
inputStream = Resources.getResourceAsStream(resource);
} catch (IOException e) {
}
//sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream ,props );
}
public static SqlSessionFactory getSessionFactory() {
return sqlSessionFactory;
}
}
【转载】https://blog.csdn.net/an341221/article/details/81736278
|