數據庫中的字段和實體類中的字段不一致


當數據庫中的字段和實體類中的字段不一致時,要想將查詢到的數據完美的封裝進實體類中有三種方法:

  1、使用別名

public class User {
    private Integer id;
    private String userName;
    private String password;
    private String userInformation;

    public User() {
    }

// 根據用戶id查詢出一條用戶記錄
public abstract User queryUserById(User user);

<select id="queryUserById" resultType="com.mybatis.domain.User">
        SELECT ID,PASSWORD,USER_NAME userName,USER_INFORMATION AS userInformation FROM tbl_user
        <where>
            ID = #{id}
        </where>
</select>

  

  2、如果是Mybatis,並且滿足如下規則:  數據庫字段: USER_INFORMATION  實體類屬性:userInformation,那么可以開啟駝峰命名規則

<configuration>
<!--設置啟用數據庫字段下划線映射到java對象的駝峰式命名屬性,默認為false-->  
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>
</configuration>

  

  3、使用resultMap對結果集進行自定義封裝(xxx可以隨意命名,但是一定要確保它們的名字要一致)

<resultMap id="xxx" type="com.mybatis.domain.User">
	<id property="id" column="ID"></id>
	<result property="userName" column="USER_NAME"></result>
	<result property="password" column="PASSWORD"></result>
	<result property="userInformation" column="USER_INFORMATION"></result>
</resultMap>

<select id="queryUserById" resultMap="xxx">
	SELECT ID,PASSWORD,USER_NAME,USER_INFORMATION FROM tbl_user
		<where>
			ID = #{id}
		</where>
</select>

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM