我正在使用 Spring Boot 开发一个新应用程序。我使用 Mybatis 进行持久化。我尽我所能使用 Java Config。
当应用程序开始创建 Mybatis 映射器界面时,我收到此异常
exception is java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required
我的 Sring Boot 应用程序类是这样设置的
@SpringBootApplication
@MapperScan("com.mydomain.admin.service.dao")
public class AdminApplication {
public static void main(String[] args) {
SpringApplication.run(AdminApplication.class, args);
}
}
Mybatis的mapper接口类是这样设置的
package com.mydomain.admin.service.dao;
public interface AdminClientDAO {
@Select("SELECT clientId, name, enabledFlag as enabled, dateAdded, dateUpdated as updateDate FROM client")
public List<Client> findAll();
}
我的数据源配置了 spring boot。我已经将属性命名为 spring.datasource.* 所以 spring boot 可以自动配置数据源
现在,我想知道我是否假设了太多的弹簧靴魔法。我假设spring boot会配置sqlSessionFactory,因为mybatis在类路径中..
我看到的许多示例都显示在 Java Config 中将 sqlSessionFactory 配置为 @Bean。这是应该做的方式是 spring boot 是否应该做一些魔术并自动配置它?