一、springboot配置文件(application.yml)中配置大小驼峰自动转换
mybatis:
configuration:
map-underscore-to-camel-case: true
二、在xml文件中使用ResultMap
<mapper namespace="demo.UserDao">
<resultMap id="userResultMap" type="entity.User">
<!-- 用id属性来映射主键字段 -->
<id property="id" column="uid"/>
<!-- 用result属性来映射非主键字段 -->
<result property="username" column="uusername "/>
<result property="birthday" column="ubirthday"/>
<result property="address" column="uaddress"/>
<result property="sex" column="usex"/>
</resultMap>
</mapper>
通过里面的id标签和result标签来建立映射关系,由property和column分别指定实体类属性和数据表的列名。
三、通过注解@Results和@Result
这两个注解和xml文件中的标签相对应的:
@Results对应resultMap
@Result对应resultsi
@Select("select * from user where uusername = #{userName}")
@Results({
@Result( id = true ,property = "id", column = "uid"),
@Result(property="username" ,column="uusername"),
@Result(property="birthday", column="ubirthday"),
@Result(property="address", column="uaddress"),
@Result(property="sex" ,column="usex"),
}
)
User selectUserByName(@Param("userName") String username);
四、在sql语句中定义别名
@Select("select user_name as username, user_id as id from user where
user_name = #{userName}")
User selectUserByName(@Param("userName") String username);