MyBatisSystemException There is no getter for property named 'id' in 'class java.lang.String'

来源:互联网 发布:淘宝怎样一键上传 编辑:程序博客网 时间:2024/06/13 20:32

具体错误信息如下:

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'id' in 'class java.lang.String'    at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)    at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)    at com.sun.proxy.$Proxy58.selectOne(Unknown Source)    at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:166)    at com.jiankunking.test.dao.NavicatCatalogueDao.getCurrentMaxNodeValue(NavicatCatalogueDao.java:52)    at com.jiankunking.test.dao.NavicatCatalogueDao$$FastClassBySpringCGLIB$$8a266e7e.invoke(<generated>)    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:721)    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)    at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:136)    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:656)    at com.jiankunking.test.dao.NavicatCatalogueDao$$EnhancerBySpringCGLIB$$d18896a4.getCurrentMaxNodeValue(<generated>)    at com.jiankunking.test.impl.NavicatCatalogueServiceImpl.getCurrentMaxNodeValue(NavicatCatalogueServiceImpl.java:26)    at com.jiankunking.test.controller.NavicatCatalogueController.insertNavicatCatalogue(NavicatCatalogueController.java:55)    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)    at java.lang.reflect.Method.invoke(Method.java:498)    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:116)    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:841)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)    at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:206)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.springframework.boot.web.filter.ApplicationContextHeaderFilter.doFilterInternal(ApplicationContextHeaderFilter.java:55)    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:108)    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:105)    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81)    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.springframework.boot.actuate.autoconfigure.MetricsFilter.doFilterInternal(MetricsFilter.java:106)    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1621)    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:541)    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1592)    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1239)    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:481)    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1561)    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1141)    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)    at org.eclipse.jetty.server.Server.handle(Server.java:564)    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)    at org.eclipse.jetty.util.thread.Invocable.invokePreferred(Invocable.java:122)    at org.eclipse.jetty.util.thread.strategy.ExecutingExecutionStrategy.invoke(ExecutingExecutionStrategy.java:58)    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:201)    at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produce(ExecuteProduceConsume.java:97)    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672)    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590)    at java.lang.Thread.run(Thread.java:745)

出错部分的代码如下:

  <select id="getCurrentMaxNodeValue" parameterType="java.lang.String" resultType="java.lang.String">        SELECT id FROM tableA        <where>            <choose>                <when test="id != null">                    parent_id=${id}                </when>                <otherwise>                    IFNULL(parent_id,'')=''                </otherwise>            </choose>        </where>        ORDER BY id DESC LIMIT 1    </select>

参数部分修改为如下即可:

<select id="getCurrentMaxNodeValue" parameterType="java.lang.String" resultType="java.lang.String">        SELECT id FROM tableA        <where>            <choose>                <when test="_parameter != null">                    parent_id=${_parameter}                </when>                <otherwise>                    IFNULL(parent_id,'')=''                </otherwise>            </choose>        </where>        ORDER BY id DESC LIMIT 1    </select>
作者:jiankunking 出处:http://blog.csdn.net/jiankunking
阅读全文
0 0
原创粉丝点击