org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value forCommand.commandListQuery
### Cause: java.lang.IllegalArgumentException:Mapped Statements collection does not contain value forCommand.commandListQuery
atorg.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
atorg.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:122)
atorg.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:113)
atcom.imooc.dao.CommandDAO.commandListQuery(CommandDAO.java:26)
atcom.imooc.service.QueryService.queryByCommand(QueryService.java:37)
atcom.imooc.servlet.AutoReplyServlet.doGet(AutoReplyServlet.java:24)
atcom.imooc.servlet.AutoReplyServlet.doPost(AutoReplyServlet.java:32)
atjavax.servlet.http.HttpServlet.service(HttpServlet.java:650)
atjavax.servlet.http.HttpServlet.service(HttpServlet.java:731)
atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
atorg.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
atorg.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
atorg.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
atorg.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
atorg.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2516)
atorg.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2505)
atjava.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
atorg.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
atjava.lang.Thread.run(Thread.java:619)
Caused by: java.lang.IllegalArgumentException:Mapped Statements collection does not contain value forCommand.commandListQuery
atorg.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:818)
atorg.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:651)
atorg.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:644)
atorg.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:119)
...25 more
没有将实体bean的配置文件加入到mybatis核心配置文件Configuration.xml中。
实体bean有Message.java,Command.java,CommandContent.java
Configuration.xml应为:
<?xml version="1.0"encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTDConfig 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC">
<property name=""value=""/>
</transactionManager>
<dataSource type="UNPOOLED">
<property name="driver"value="com.mysql.jdbc.Driver"/>
<property name="url"value="jdbc:mysql://127.0.0.1:3306/micro_message"/>
<property name="username"value="root"/>
<property name="password"value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/imooc/config/sqlxml/Message.xml"/>
<mapper resource="com/imooc/config/sqlxml/CommandContent.xml"/>
<mapper resource="com/imooc/config/sqlxml/Command.xml"/>
</mappers>
</configuration>