在MyBatis中,可以通過使用ResultMap和ResultType來解決屬性名與字段名不一致的問題。
<result>
標簽來指定屬性名和字段名的映射關系。例如:<resultMap id="userResultMap" type="User">
<result property="id" column="user_id"/>
<result property="name" column="user_name"/>
<result property="email" column="user_email"/>
</resultMap>
在查詢語句中使用ResultMap:
<select id="getUser" resultMap="userResultMap">
SELECT user_id, user_name, user_email
FROM users
WHERE user_id = #{id}
</select>
<select id="getUser" resultType="User">
SELECT user_id as id, user_name as name, user_email as email
FROM users
WHERE user_id = #{id}
</select>
需要注意的是,使用ResultMap可以實現更復雜的映射關系,而使用ResultType只能簡單地將查詢結果直接映射到對應的屬性中。因此,如果有復雜的映射關系,推薦使用ResultMap來解決屬性名與字段名不一致的問題。