当前使用版本(必填,否则不予处理)
3.5.1
该问题是如何引起的?(确定最新版也有问题再提!!!)
`
public static Object sqlSelectOne(SqlSessionFactory sessionFactory, String sql, Class<?> clazz) throws SQLException {
SqlSession sqlSession = null;
try {
// 创建SqlSession
sqlSession = sessionFactory.openSession(true);
// 获取Configuration
Configuration configuration = sessionFactory.getConfiguration();
String msId = SqlCommandType.SELECT + ".sqlSelectOne" + UUID.fastUUID().toString(true);
if (!hasMappedStatement(configuration,msId)) {
LanguageDriver driver = configuration.getDefaultScriptingLanguageInstance();
SqlSource source = driver.createSqlSource(configuration,sql,clazz);
List
}
`
执行sqlSession.selectOne时出现的
重现步骤(如果有就写完整)
非spring项目,非xml文件,直接启动项目,然后调用这个接口
报错信息
org.apache.ibatis.exceptions.PersistenceException:
Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for SELECT.sqlSelectOne62223409670101402067ee2def7e724dfaa72737ca285c78b2
Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for SELECT.sqlSelectOne62223409670101402067ee2def7e724dfaa72737ca285c78b2
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:153)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:76)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:70)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for SELECT.sqlSelectOne62223409670101402067ee2def7e724dfaa72737ca285c78b2 at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:1054) at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:844) at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:837) at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150) ... 9 more
Comment From: oriming
@cheng8868789 加上此配置试试:
mybatis-plus.global-config.enable-sql-runner=true
Comment From: miemieYaho
你都没有SELECT.sqlSelectOne62223409670101402067ee2def7e724dfaa72737ca285c78b2这个MappedStatements不报错想怎样?