当前使用版本(必须填写清楚,否则不予处理)
mybatis-plus-boot-starter 3.1.2
该问题是怎么引起的?
直接用Mapper就可以正常操作用的mybatis-plus增强方法就可以了,
重现步骤
IQrtzExceptionDao extends IService
@Autowired private IQrtzExceptionDao iQrtzExceptionDao;
iQrtzExceptionDao.save(qe);
报错信息
出现 Invalid bound statement (not found) 异常
想问下MybatisSqlSessionFactory怎配置使用,springboot框架的 要在application.ymlj里配置,还是那里配置MybatisSqlSessionFactory并可以注入MybatisSqlSessionFactory ,因为在官网有就问题,就是最后没说明怎配置解决这问题
Comment From: yuxiaobin
https://github.com/baomidou/mybatis-plus-samples 这里已经有很多例子了 去掉原生mybatis的配置,引入mp-boot-starter, 参考samples里的项目配置一下
Comment From: lyq628
public Resource[] resolveMapperLocations(String[] mapperLocations)
{
ResourcePatternResolver resourceResolver = new PathMatchingResourcePatternResolver();
List<Resource> resources = new ArrayList<Resource>();
if (mapperLocations != null)
{
for (String mapperLocation : mapperLocations)
{
try
{
Resource[] mappers = resourceResolver.getResources(mapperLocation);
resources.addAll(Arrays.asList(mappers));
}
catch (IOException e)
{
// ignore
}
}
}
return resources.toArray(new Resource[resources.size()]);
}
@Bean
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception
{
String typeAliasesPackage = env.getProperty("mybatis-plus.typeAliasesPackage");
String mapperLocations = env.getProperty("mybatis-plus.mapperLocations");
String configLocation = env.getProperty("mybatis-plus.configLocation");
typeAliasesPackage = setTypeAliasesPackage(typeAliasesPackage);
VFS.addImplClass(SpringBootVFS.class);
// final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
MybatisSqlSessionFactoryBean sessionFactory=new MybatisSqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
sessionFactory.setTypeAliasesPackage(typeAliasesPackage);
sessionFactory.setMapperLocations(resolveMapperLocations(StringUtils.split(mapperLocations, ",")));
sessionFactory.setConfigLocation(new DefaultResourceLoader().getResource(configLocation));
return sessionFactory.getObject();
}