ibatis项目中需要同时用到3种数据连接,5个数据库如下:
oracle、sqlserver、mysql三种数据连接要用,其中oracle需要连接db1及db2数据库,sqlserver需要连接到sqldb1及sqldb2数据库,mysql需要调用CRM数据库,
如果只连接其中的一个数据库是可以的,但连接两个或以上就不行了,报以下错误了:
com.ibatis.sqlmap.client.SqlMapException: There is no statement named info.abatorgenerated_selectByExample in this SqlMap.
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.getMappedStatement(SqlMapExecutorDelegate.java:293)
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:606)
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:589)
at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:118)
at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapClientImpl.java:95)
at _jsp._index__jsp._jspService(_index__jsp.java:97)
at com.caucho.jsp.JavaPage.service(JavaPage.java:60)
at com.caucho.jsp.Page.pageservice(Page.java:570)
at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:179)
at com.grandcareweb.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:99)
at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:173)
at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:229)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:274)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:514)
at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:520)
at com.caucho.util.ThreadPool.run(ThreadPool.java:442)
at java.lang.Thread.run(Thread.java:619)请高手指点!为谢
oracle、sqlserver、mysql三种数据连接要用,其中oracle需要连接db1及db2数据库,sqlserver需要连接到sqldb1及sqldb2数据库,mysql需要调用CRM数据库,
如果只连接其中的一个数据库是可以的,但连接两个或以上就不行了,报以下错误了:
com.ibatis.sqlmap.client.SqlMapException: There is no statement named info.abatorgenerated_selectByExample in this SqlMap.
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.getMappedStatement(SqlMapExecutorDelegate.java:293)
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:606)
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:589)
at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:118)
at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapClientImpl.java:95)
at _jsp._index__jsp._jspService(_index__jsp.java:97)
at com.caucho.jsp.JavaPage.service(JavaPage.java:60)
at com.caucho.jsp.Page.pageservice(Page.java:570)
at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:179)
at com.grandcareweb.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:99)
at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:173)
at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:229)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:274)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:514)
at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:520)
at com.caucho.util.ThreadPool.run(ThreadPool.java:442)
at java.lang.Thread.run(Thread.java:619)请高手指点!为谢
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<properties resource="com/tea/mmsc/util/jdbc1.properties" />
<properties resource="com/tea/mmsc/util/jdbc2.properties" />
<settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" maxRequests="64" maxSessions="20" maxTransactions="20" useStatementNamespaces="true" />
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="${jdbc.driver}" />
<property name="JDBC.ConnectionURL" value="${jdbc.url}" />
<property name="JDBC.Username" value="${jdbc.user}" />
<property name="JDBC.Password" value="${jdbc.password}" />
</dataSource>
</transactionManager>
---------------------------------------------------------------
jdbc1.properties如下:
#jdbc.driver = oracle.jdbc.driver.OracleDriver
#jdbc.url = jdbc:oracle:thin:@192.168.2.51:1521:lylor
#jdbc.user = tea
#jdbc.password = teadatabase2007
----------------------------------------------------
jdbc2.properties如下:
#jdbc.driver = net.sourceforge.jtds.jdbc.Driver
#jdbc.url = jdbc:jtds:sqlserver://localhost/teaother
#jdbc.user = sa
#jdbc.password = 123
<properties resource="com/tea/mmsc/util/jdbc2.properties" />
<settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" maxRequests="64" maxSessions="20" maxTransactions="20" useStatementNamespaces="true" />
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="${jdbc.driver}" />
<property name="JDBC.ConnectionURL" value="${jdbc.url}" />
<property name="JDBC.Username" value="${jdbc.user}" />
<property name="JDBC.Password" value="${jdbc.password}" />
</dataSource>
</transactionManager>
一个properties 对应一个transactionManager试试看。