В данный момент у меня проблема с поиском, но я все еще не нашел ответа.
Причины проблемы: У нас несколько схем БДпо одному URL-адресу, включая тестовые копии схем (например, schema1, schema2, schema1_test, schema2_test находятся по одному и тому же URL).Я пытаюсь сделать, какая версия каждой схемы используется настраиваемой через файл свойств.
Мы используем Spring и mybatis, и, к сожалению, я новичок в обоих (поэтому, пожалуйста, извините за мое невежество или любые ошибки, которые ясделайте описание проблемы!)
Итак, в моем весеннем конфигурационном файле, который хранится в / src / main / resources, у меня есть следующие фрагменты: (я только добавил свойство «configLocation» и позже добавилСвойство "sqlSessionFactoryBeanName")
<!-- define the SqlSessionFactory -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="typeAliasesPackage" value="com.example.domain" />
<property name="configLocation" value="classpath:mybatisConfig.xml" />
</bean>
<!-- scan for mappers and let them be autowired -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.example.something.persistence" />
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
</bean>
My mybatisConfig.xml (хранится в / src / main / resources, который должен находиться в пути к классам)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="sqlmapconfig.properties" />
</configuration>
sqlmapconfig.properties (в той же папке)
schema1=schema1_test
И я пытаюсь ссылаться на свойство в одном из файлов сопоставления в com.example.something.persistence:
<select id="test" resultType="result" parameterType="long">
select ${schema1}.table.col
from ${schema1}.table
</select>
Когда я пытаюсь собрать с Maven, он не проходит тест:
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'schema1' in 'class java.lang.Long'
Любые предложения будут с благодарностью!