关于myBatis的问题There is no getter for property named 'USER_NAME' in 'class com.bky.model.实例类'

简介:

现在流行的 ssm(spring + struts2 + myBatis)  持久层的mybatis是需要配置映射器的,找了个demo连接的数据库MySQL 于是就修改了一下弄成了连接Oracle

一切就绪之后跑起来 执行插入操作的时候问题来了 ,报了一个这个错我的表是B 字段是id ,user_name ,password  实例类的字段是 id , userName,password,

这里有个user_name 和userName 搞了一下午弄的头疼,后来发现了猫腻,

There is no getter for property named 'USER_NAME' in 'class com.bky.model.B'

代码:

实体类 B

 

 

[java]  view plain  copy
 
 在CODE上查看代码片派生到我的代码片
  1. package com.bky.model;  
  2.   
  3. public class B {  
  4.     private Long id;  
  5.   
  6.     private String userName;  
  7.       
  8.     private String password;  
  9.   
  10.     public Long getId() {  
  11.         return id;  
  12.     }  
  13.     public void setId(Long id) {  
  14.         this.id = id == null ? null : id;  
  15.     }  
  16.     public String getUserName() {  
  17.         return userName;  
  18.     }  
  19.   
  20.     public void setUserName(String userName) {  
  21.         this.userName = userName;  
  22.     }  
  23.   
  24.     public String getPassword() {  
  25.         return password;  
  26.     }  
  27.   
  28.     public void setPassword(String password) {  
  29.         this.password = password == null ? null : password.trim();  
  30.     }  
  31. }  



 

 

映射器.xml

 

 

[html]  view plain  copy
 
 在CODE上查看代码片派生到我的代码片
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >  
  3.   
  4. <mapper namespace="com.bky.dao.BMapper" >  
  5.   
  6.   <resultMap id="BaseResultMap" type="com.bky.model.B" >  
  7.     <id column="ID" property="id" jdbcType="INTEGER" />  
  8.     <result column="USER_NAME" property="userName" jdbcType="VARCHAR" />  
  9.     <result column="PASSWORD" property="password" jdbcType="VARCHAR" />  
  10.   </resultMap>  
  11.   
  12.   <sql id="Base_Column_List" >  
  13.     ID, USER_NAME, PASSWORD  
  14.   </sql>  
  15.     
  16.   
  17.     <insert id="insertSelective" parameterType="com.bky.model.B" >  
  18.     insert into B ( USER_NAME,PASSWORD) values(#{USER_NAME,jdbcType=VARCHAR},#{password,jdbcType=VARCHAR})   
  19.     </insert>   
  20.     <update id="updateByPrimaryKey" parameterType="com.bky.model.B" >   
  21.     update B set USER_NAME = #{USER_NAME,jdbcType=VARCHAR}, PASSWORD = #{PASSWORD,jdbcType=VARCHAR} where id = #{id,jdbcType=INTEGER}   
  22.     </update>   
  23.     <select id="getAll" resultMap="BaseResultMap"> SELECT * FROM B </select>  
  24. </mapper>  

 

 

 

错误写法如下

<insert id="insertSelective" parameterType="com.bky.model.B" >
insert into B ( USER_NAME,PASSWORD) values(#{USER_NAME,jdbcType=VARCHAR},#{password,jdbcType=VARCHAR}) 
</insert> 

我们重点关注一下这里user_name 是个表字段和
后面的#{USER_NAME,jdbcType=VARCHAR} 这里错了,应该
写成#{userName,jdbcType=VARCHAR} 应该是属性值 
啊找的好苦啊 一下午就这样浪费了 不过还是解决了 ,
一开始百度了很多 有的人是属性名写错了,有的是没有set/get  
总结到此分享一下 有此情况错误的 一般就这几种了希望可以帮助到初学者

分类: JAVA
0
1
« 上一篇: Mybatis问题:There is no getter for property named 'unitId' in 'class java.lang.String'
» 下一篇: oracle数据库存储过程中NO_DATA_FOUND不起作用解决
posted @ 2017-03-09 13:39 左正 阅读( 4698) 评论( 0) 编辑 收藏
 
相关文章
|
7月前
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
|
7月前
Mybatis+mysql动态分页查询数据案例——条件类(HouseCondition)
Mybatis+mysql动态分页查询数据案例——条件类(HouseCondition)
|
7月前
Mybatis+mysql动态分页查询数据案例——房屋信息的实现类(HouseDaoMybatisImpl)
Mybatis+mysql动态分页查询数据案例——房屋信息的实现类(HouseDaoMybatisImpl)
|
XML Java 数据库连接
解决在mybatis中使用class属性绑定映射文件出现的异常问题~
解决在mybatis中使用class属性绑定映射文件出现的异常问题~
|
5月前
|
Java 数据库连接 mybatis
SpringBoot配置Mybatis注意事项,mappers层下的name命名空间,要落实到Dao的video类,resultType要落到bean,配置好mybatis的对应依赖。
SpringBoot配置Mybatis注意事项,mappers层下的name命名空间,要落实到Dao的video类,resultType要落到bean,配置好mybatis的对应依赖。
|
7月前
|
存储 缓存 Java
探秘MyBatis缓存原理:Cache接口与实现类源码分析
探秘MyBatis缓存原理:Cache接口与实现类源码分析
115 2
探秘MyBatis缓存原理:Cache接口与实现类源码分析
|
6月前
|
Java 数据库连接 mybatis
为什么Mybatis Mapper不需要实现类?
在学习Java动态代理之前,我想让大家先思考这样几个问题。 • JDK动态代理为什么不能对类进行代理? • Mybatis Mapper接口为什么不需要实现类? 如果你还不知道上述问题的答案,那么这篇文章一定能消除你心中的疑惑。
|
7月前
|
Java 数据库连接 数据库
mybatis-plus报错:Can not find table primary key in Class
mybatis-plus报错:Can not find table primary key in Class
1600 1
|
7月前
|
Web App开发 前端开发 JavaScript
Spring Boot整合 mybatisplus(后端) Vue+echarts+Element UI+axios(前端)---前后端项目实例demo
Spring Boot整合 mybatisplus(后端) Vue+echarts+Element UI+axios(前端)---前后端项目实例demo
149 1
|
7月前
|
Java 关系型数据库 MySQL
springboot+mybatis-plus实例demo
springboot+mybatis-plus实例demo