Red de conocimiento informático - Problemas con los teléfonos móviles - Posibles errores al configurar múltiples fuentes de datos con Spring MVC

Posibles errores al configurar múltiples fuentes de datos con Spring MVC

Dado que la empresa necesita conectar múltiples fuentes de datos, encontramos algunos errores durante el proceso de configuración, los registraré y compartiré aquí.

Información básica sobre múltiples fuentes de datos en el archivo jdbc.properties:

Configurar la fuente de datos en el archivo applicationContext.xml:

Configurar mybatisSqlSessionFactoryBean:

p>

Configurar mybatisSqlSessionFactoryBean en applicationContext.:

Configurar SqlSessionTemplate en el archivo applicationContext.xml:

Configurar la interfaz del mapeador mybatis en el archivo applicationContext.xml para escanear todo dao:

Si se configura como se indica arriba, debería funcionar bien.

org.apache.ibatis.binding.BindingException: Error de declaración vinculante no válida (no encontrada)

Mensaje de error específico:

Como puede verse, hay 2 Esta excepción ocurrirá en esta situación:

mappedStatements es {} (el seguimiento y la depuración encontraron que lo que vi aquí está vacío)

contiene clave (nombre de declaración), no encontrada

mappedStatements está vacío porque cuando se inicia el contenedor Spring, analizará Spring Cuando se inicia el contenedor Spring, analizará el archivo de configuración de Spring, cargará archivos de recursos, los analizará y los almacenará en caché en mappedStatements en forma de clave y valor. . En la operación real, encontramos que *Mapper.xml no se copió automáticamente al directorio de salida de la clase en el paquete de la clase mapper. Esto da como resultado que mappedStatements esté vacío.

La interfaz Mapper es inconsistente con la definición en el archivo xml, por lo que debe verificar si el nombre del paquete, el espacio de nombres, el nombre de la función, etc. corresponden.

Realice los siguientes pasos uno por uno:

1. Compruebe si el nombre del paquete del archivo xml es coherente con el nombre del paquete correspondiente a la interfaz

2. Verifique el archivo xml uno por uno si el espacio de nombres corresponde al nombre del paquete donde se encuentra el archivo xml

3. Verifique si el nombre de la función puede corresponder

4. Elimina los comentarios chinos en el archivo xml

5. Siéntete libre de agregar espacios o líneas en blanco al archivo xml y luego guárdalo

6. Problema de ruta

Al desarrollar usando IDEA, si * Mapper.xml no está empaquetando el paquete de clase mapper Al copiar al directorio de salida de clase del directorio de salida de clase, entonces debe agregar la configuración del archivo de configuración de carga mybatis en el archivo pom.

De la siguiente manera:

Después de agregar el archivo de configuración de carga mybatis en el archivo pom, el problema está perfectamente resuelto.