mybatis3  : mysql文如下,传入参数为string类型时‘preCode’,运行报错为:There is no getter for property named 'preCode' in 'class java.lang.String

执行sql:

mapper.xml文件:

    <select id="getMaxCode" parameterType="string" resultType="string">select max(code) as code from <include refid="t_purchase_yearconstact"/><where><if test="preCode != null and preCode != ''">and code like #{preCode}</if></where></select>

发现不能将参数设为bean里的名称,如果传入类型为String类型,则参数需统一修改为{_parameter},修改后的sql语句如下(不管你的参数是什么,都要改成"_parameter")

修正后的mapper文件:

<select id="getMaxCode" parameterType="string" resultType="string">select max(code) as code from <include refid="t_purchase_yearconstact"/><where><if test="_parameter != null and _parameter != ''">and code like #{_parameter}</if></where></select>

这样就可以了!!!!

错误:

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'preCode' in 'class java.lang.String'
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:365)
at com.sun.proxy.$Proxy12.selectOne(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:160)
at com.banksteel.erp.purchase.dao.impl.PurchaseYearconstactDaoImpl.getMaxCode(PurchaseYearconstactDaoImpl.java:18)
at com.banksteel.erp.purchase.service.impl.PurchaseYearconstactServiceImpl.getCode(PurchaseYearconstactServiceImpl.java:165)
at com.banksteel.erp.purchase.service.impl.PurchaseYearconstactServiceImpl.createPurchaseYearconstact(PurchaseYearconstactServiceImpl.java:49)
at com.banksteel.erp.purchase.PurchaseYearconstactServiceTest.testInsert(PurchaseYearconstactServiceTest.java:58)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:74)
at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:83)
at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:72)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:88)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'preCode' in 'class java.lang.String'
at org.apache.ibatis.reflection.Reflector.getGetInvoker(Reflector.java:377)
at org.apache.ibatis.reflection.MetaClass.getGetInvoker(MetaClass.java:167)
at org.apache.ibatis.reflection.wrapper.BeanWrapper.getBeanProperty(BeanWrapper.java:149)
at org.apache.ibatis.reflection.wrapper.BeanWrapper.get(BeanWrapper.java:45)
at org.apache.ibatis.reflection.MetaObject.getValue(MetaObject.java:113)
at org.apache.ibatis.scripting.xmltags.DynamicContext$ContextMap.get(DynamicContext.java:89)
at org.apache.ibatis.scripting.xmltags.DynamicContext$ContextAccessor.getProperty(DynamicContext.java:107)
at org.apache.ibatis.ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1657)
at org.apache.ibatis.ognl.ASTProperty.getValueBody(ASTProperty.java:92)
at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)
at org.apache.ibatis.ognl.ASTNotEq.getValueBody(ASTNotEq.java:49)
at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)
at org.apache.ibatis.ognl.ASTAnd.getValueBody(ASTAnd.java:56)
at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)
at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:333)
at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:413)
at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:395)
at org.apache.ibatis.scripting.xmltags.OgnlCache.getValue(OgnlCache.java:45)
at org.apache.ibatis.scripting.xmltags.ExpressionEvaluator.evaluateBoolean(ExpressionEvaluator.java:29)
at org.apache.ibatis.scripting.xmltags.IfSqlNode.apply(IfSqlNode.java:30)
at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29)
at org.apache.ibatis.scripting.xmltags.TrimSqlNode.apply(TrimSqlNode.java:47)
at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29)
at org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:37)
at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:265)
at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:79)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:104)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:98)
at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:62)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:355)
... 34 more

---恢复内容结束---

MyBatis3: There is no getter for property named 'code' in 'class java.lang.String'相关推荐

  1. mybaits错误解决:There is no getter for property named 'parentId ' in class 'java.lang.String'

    在使用mybaitis传参数的时候,如果仅传入一个类型为String的参数,那么在 xml文件中应该使用_parameter来代替参数名. 比如mapper中如下方法,只有一个String值 publ ...

  2. Mybatis中传参包There is no getter for property named XXX in class java.lang.String

    一.发现问题 <select id="queryStudentByNum" resultType="student" parameterType=&quo ...

  3. Mybatis问题:There is no getter for property named 'unitId' in 'class java.lang.String'

    Mybatis遇到的问题 问题: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.re ...

  4. mybatis There is no getter for property named 'xx' in 'class java.lang.String

    用mybatis查询时,传入一个字符串传参数,且进行判断时,会报 Java代码   There is no getter for property named 'moduleCode' in 'cla ...

  5. Mybatis异常There is no getter for property named ‘XXX‘ in ‘class java.lang.String‘

    Mybatis异常There is no getter for property named 'XXX' in 'class java.lang.String' 参考文章: (1)Mybatis异常T ...

  6. SSM框架报错分析(一)——There is no getter for property named 'XXX' in 'class java.lang.String'...

    一.发现问题<select id="queryStudentByNum" resultType="student" parameterType=" ...

  7. Mybatis报错There is no getter for property named 'id' in 'class java.lang.String'

    昨天运行公司项目的一个模块时,后台报了一个错: Caused by: org.apache.ibatis.reflection.ReflectionException: There is no get ...

  8. mybatis传单个参数报错:There is no getter for property named 'user_id' in 'class java.lang.String

    org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'user_id' in ...

  9. Mybatis error,There is no getter for property named 'xx' in 'class java.lang.String',解决办法

    今天在使用Mybatis的时候遇到一个问题,在传递一个String参数的时候遇到下面的错误: Mapper.xml代码如下: 执行这个方法的时候报错: 项目Jar管理用的是Maven,Mybatis版 ...

最新文章

  1. NetCore学习实践1__项目创建和配置文件的获取
  2. OpenCV中使用SVM简介
  3. python 设计 实践_python实践设计模式(一)概述和工厂模式
  4. python编程爱心-python画一个玫瑰和一个爱心
  5. 前端学习(1029):jquery其他方法
  6. Project FreeEIM 2.0:重现失落的飞鸽传书
  7. PNG和PVR之间互相转换的脚本
  8. java基础巩固笔记(5)-多线程之线程并发库
  9. python从入门到精通需要多久-Python从入门到精通:一个月就够了
  10. [转]解决Sublime Text 2中文显示乱码问题
  11. JAVA中易出错的小问题(二)
  12. 服务器安全设置篇(珍藏补充版中)
  13. Atitit 数据库核心技术index索引技术 btree hash lsm fulltxt目录1.1. HASH
  14. js生成java uuid_JS生成UUID 前端UUID
  15. 基于matlab的平面切割、旋转曲面等动图制作
  16. Root手机后有什么好处吗?我应该如何Root自己的手机?
  17. 在浏览器输入URL会发生什么?
  18. uniapp-mixpanel用户行为分析埋点统计插件
  19. Vue-第三方库扩展
  20. ubuntu 12.10起用g++4.7 编译C++11

热门文章

  1. 在WinForm应用程序中嵌入WPF控件(转)
  2. [转摘] JSP连接SQL SERVER问题总结
  3. 新手入门之j2me学习方法总结--摘录篇
  4. 2.逆向分析Hello World!程序-上
  5. hdu4496并查集的删边操作
  6. 【C 语言】文件操作 ( 文件加密解密 | 加密解密原理 | 对称加密 | 非对称加密 | 散列函数 )
  7. 【Android 逆向】ARM CPU 架构体系 ( ARM 内存模型 | ARM 架构堆的实现 | ARM 架构栈的实现 )
  8. 【Android 安全】DEX 加密 ( Application 替换 | Android 应用启动原理 | ActivityThread 源码分析 )
  9. 【Netty】反应器 Reactor 模式 ( 单反应器 Reactor 单线程 | 单反应器 Reactor 多线程 )
  10. MySQL 报 Can't create more than max_prepared_stmt_count statements