日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發布時間:2024/9/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于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 plaincopy
  • package?com.bky.model;??
  • ??
  • public?class?B?{??
  • ????private?Long?id;??
  • ??
  • ????private?String?userName;??
  • ??????
  • ????private?String?password;??
  • ??
  • ????public?Long?getId()?{??
  • ????????return?id;??
  • ????}??
  • ????public?void?setId(Long?id)?{??
  • ????????this.id?=?id?==?null???null?:?id;??
  • ????}??
  • ????public?String?getUserName()?{??
  • ????????return?userName;??
  • ????}??
  • ??
  • ????public?void?setUserName(String?userName)?{??
  • ????????this.userName?=?userName;??
  • ????}??
  • ??
  • ????public?String?getPassword()?{??
  • ????????return?password;??
  • ????}??
  • ??
  • ????public?void?setPassword(String?password)?{??
  • ????????this.password?=?password?==?null???null?:?password.trim();??
  • ????}??
  • }??
  • 映射器.xml

    [html]?view plaincopy
  • <?xml?version="1.0"?encoding="UTF-8"??>??
  • <!DOCTYPE?mapper?PUBLIC?"-//mybatis.org//DTD?Mapper?3.0//EN"?"http://mybatis.org/dtd/mybatis-3-mapper.dtd"?>??
  • ??
  • <mapper?namespace="com.bky.dao.BMapper"?>??
  • ??
  • ??<resultMap?id="BaseResultMap"?type="com.bky.model.B"?>??
  • ????<id?column="ID"?property="id"?jdbcType="INTEGER"?/>??
  • ????<result?column="USER_NAME"?property="userName"?jdbcType="VARCHAR"?/>??
  • ????<result?column="PASSWORD"?property="password"?jdbcType="VARCHAR"?/>??
  • ??</resultMap>??
  • ??
  • ??<sql?id="Base_Column_List"?>??
  • ????ID,?USER_NAME,?PASSWORD??
  • ??</sql>??
  • ????
  • ??
  • ????<insert?id="insertSelective"?parameterType="com.bky.model.B"?>??
  • ????insert?into?B?(?USER_NAME,PASSWORD)?values(#{USER_NAME,jdbcType=VARCHAR},#{password,jdbcType=VARCHAR})???
  • ????</insert>???
  • ????<update?id="updateByPrimaryKey"?parameterType="com.bky.model.B"?>???
  • ????update?B?set?USER_NAME?=?#{USER_NAME,jdbcType=VARCHAR},?PASSWORD?=?#{PASSWORD,jdbcType=VARCHAR}?where?id?=?#{id,jdbcType=INTEGER}???
  • ????</update>???
  • ????<select?id="getAll"?resultMap="BaseResultMap">?SELECT?*?FROM?B?</select>??
  • </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 ?
    總結到此分享一下 有此情況錯誤的 一般就這幾種了希望可以幫助到初學者

    總結

    以上是生活随笔為你收集整理的关于myBatis的问题There is no getter for property named 'USER_NAME' in 'class com.bky.model.实例类'...的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。