Ibatis SqlMapConfig.xml配置以下两种加载SQL文件方式,第一种按classpath加载 <!-- <sqlMap resource="../devConf/topology/queryData.xml" /> <sqlMap resource="../devConf/topology/insertData.xml" />-->第二按文件目录加载,但在eclipse里不行,不知道为什么 <sqlMap url="file:../devConf/topology/queryData.xml" />或写成绝对路径"file:///tmp/devConf/topology/queryData.xml" <sqlMap url="file:../devConf/topology/insertData.xml" /> 加载文件:protected static Logger log = Logger.getLogger(BaseDao.class); protected static SqlMapClient sqlMap; static { //log.debug("在静态块中开始初始化SqlMapClient为单�?���?); try { PropertyConfigurator.configure(BaseDao.class.getResource("/log4j.properties")); log.debug("加载属�?文件:db.properties"); Properties config = new Properties(); //config.load(BaseDao.class.getResourceAsStream("/db.properties")); // config.load(new InputStream(IAppConstants.APPLICATIONBASEPATH+"initConfig/db.properties")); InputStream ints = new FileInputStream(new File(IAppConstants.APPLICATIONBASEPATH+"initConfig/db.properties")); config.load(ints); String mapType = config.getProperty("sqlMapConfigType"); log.debug("从属性文件中获取SqlMapConfig的类�?" + mapType); String resource = config.getProperty(mapType); //log.debug("加载SqlMapConfig文档名称�? + resource); Reader reader = Resources.getResourceAsReader(resource); //XmlSqlMapClientBuilder sqlMapClientBuilder = new XmlSqlMapClientBuilder(); // sqlMap = sqlMapClientBuilder.buildSqlMap(reader); sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader); } catch (IOException e) { e.printStackTrace(); log.error(e.getMessage()); log.error(e.getMessage()); throw new RuntimeException("不能够初始化BaseDao�?" + e); } catch (Exception e) { e.printStackTrace(); log.error(e.getMessage()); // throw new RuntimeException("不能够初始化BaseDao�?" + e); } log.debug("SqlMapClient初始完毕"); } /** * 返回单实例SqlMapClient对象 * * @return SqlMapClient对象 */ public static SqlMapClient getSqlMapInstance() { return sqlMap; } /** * 释放数据库连接资�? */ public static void release() { //log.debug("释放数据库连接资�?); sqlMap.openSession().close(); }
ibatis 配置文件
最新推荐文章于 2021-03-19 05:38:12 发布