zoukankan      html  css  js  c++  java
  • mybati 字段映射

      Java中属性命名一般使用驼峰命名法,mysql中的字段一般使用“_”来连接两个单词。例如mysql中一般都是 admin_id 而不是adminId,java程序中在dao层定义的话一般都是 adminId  通过驼峰法来命名字段。 

      没有处理的情况下mysql字段和java中字段不匹配,通过SELECT 获取不到数据。需要先通过字段映射,二字段映射一般有三种情况

    1设置别名,返回列的别名和Model中的属性一致,所以可以映射。(一般不推荐,如果使用视图可以使用这个)

    <select id="getOne"   resultType="User">
    select id,user_name userName,user_pass userPass from sys_useer where id=#{id}
    </select>

    2设置resultMap,使返回列和Model中的属性匹配 

     <?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.item.mapper.UserMapper">
    
    <resultMap id="userMap" type="com.item.model.User">
    <id property="id" column="id" />
    <result property="userName" column="user_name"/>
    <result property="userPass" column="user_pass"/>
    </resultMap>
    
    <sql id="Base_Column_List">
            id,user_name,user_pass
    </sql>
    <select id="getOne" resultMap="userMap">
            select
    <include refid="Base_Column_List"/>
            from user where id=#{id}
    </select>
    </mapper>

    3mybatis 驼峰映射

    3.1在.properties/.yml(注意yml中不是一下格式)文件中添加

    mybatis.configuration.map-underscore-to-camel-case=true 

    3.2在mybatis的配置文件,如mybatis-config.xml中进行配置:

    <configuration>
        <!--设置启用数据库字段下划线映射到java对象的驼峰式命名属性,默认为false,true表示开启-->  
        <settings>
          <setting name="mapUnderscoreToCamelCase" value="true"/>
        </settings>
     
    </configuration>
  • 相关阅读:
    Tarjan算法与割点割边
    kmp匹配
    最小表示法
    字典树
    哈希
    网络流入门浅谈
    关于两道搜索的题目
    2020 4.2校内测题解
    LIS最长上升子序列讲解&&洛谷P1439 【模板】最长公共子序列 题解
    浅谈拉格朗日插值公式
  • 原文地址:https://www.cnblogs.com/1439107348s/p/14518636.html
Copyright © 2011-2022 走看看