1
回答
Uncode-DAL 个人配置查询数据没问题 ,插入数据就报错
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

@uncode 你好,想跟你请教个问题:

        数据源可以配置除了mysql以外的数据库吗,比如oracle , sql server ,我调用api接口插入数据报错了,错误 :Cannot determine target DataSource for lookup key [write]

at org.fastser.dal.datasource.DynamicDataSource.getConnection(DynamicDataSource.java:129)
at org.fastser.dal.descriptor.db.impl.SimpleResolveDatabase.loadTable(SimpleResolveDatabase.java:65)
at org.fastser.dal.core.AbstractBaseDAL.retrievalTableByModel(AbstractBaseDAL.java:324)
at org.fastser.dal.core.AbstractBaseDAL.insert(AbstractBaseDAL.java:341)
at org.fastser.dal.core.AbstractBaseDAL.insert(AbstractBaseDAL.java:334)     

我的配置如下:

<!-- DAL dataSource配置 -->
<bean id="dynamicDataSource" class="org.fastser.dal.datasource.DynamicDataSource">
        <property name="slaveDataSources">
            <map key-type="java.lang.String">
                <entry key="readDataSourceOne" value-ref="dataSource1"/>
                <entry key="readDataSourceTwo" value-ref="dataSource2"/>
            </map>
        </property>
        <!-- 主数据库配置 -->
        <property name="masterDataSource" ref="dataSource" />
        <property name="standbyDataSource" ref="standbySource" />
        
    </bean>
<!--DAL  Spring jdbc 实现配置 -->
<!-- 可选,缓存默认实现,集群时建议使用分布式缓存自定义实现 -->
<bean id="dalCache" class="org.fastser.dal.cache.impl.ConcurrentMapCache"></bean>
<!-- 配置缓存 -->
<bean id="cacheManager" class="org.fastser.dal.cache.support.SimpleCacheManager">
<property name="cache" ref="dalCache"></property>
</bean>
<!-- 配置数据源解析器 -->
<bean id="resolveDatabase"
class="org.fastser.dal.descriptor.db.impl.SimpleResolveDatabase">
<property name="dataSource" ref="dynamicDataSource" />
<property name="cacheManager" ref="cacheManager" />
</bean>


<!-- spring jdbc实现配置 -->
<bean id="commonJdbcSupport" class="org.fastser.dal.spring.jdbc.CommonJdbcSupport">
<property name="dataSource" ref="dynamicDataSource" />
</bean>
<bean id="baseDAL" class="org.fastser.dal.spring.jdbc.SpringJDBCDAL">
<property name="cacheManager" ref="cacheManager" />
<property name="commonJdbcSupport" ref="commonJdbcSupport" />
<property name="resolveDatabase" ref="resolveDatabase" />
<!-- 可选,配置全局不使用缓存,默认为true -->
<property name="useCache" value="false" />
<!-- 可选,乐观锁,如果配置该项并且表中存在字段名为ver的字段,则该表可使用乐观锁机制 -->
<property name="version" value="ver" />
</bean>

数据库我用的mysql,查询数据没有问题,就是插入数据不行。请教下我的这个是配置的问题,还是其他原因?谢谢!



    

举报
kaldr
发帖于2年前 1回/373阅
顶部