MyBatis简单使用
步骤
一、添加依赖: mybatis
,mariadb
驱动
二、配置数据库
application.yml
spring:datasource:url: jdbc:mariadb://127.0.0.1:3306/数据库username: rootpassword: 20040814driver-class-name: org.mariadb.jdbc.Driver
三、添加Mapper
映射
@Mapper
public interface UserInfoMapper {@Select("select *from userinfo") //接口方法的实现List<UserInfo> getUserInfoAll();
}
参数传递
单个参数
@Select("select * from userinfo where delete_flag = #{deleteFlag}")
List<UserInfo> getUserInfoByDeleteFlag(Integer flag)
多个参数
@Select("select * from userinfo where delete_flag = #{deleteFlag} and gender = #{gender}")
List<UserInfo> getUserInfo(@Paaram("flag")Integer flag, @Param("gender")Integer gender);
结果映射
当数据库字段和Java属性不一致时
一、取别名
@Select("select id, username, password, age, gender, phone,"+"delete_flag as deleteFlag, create_time as createTime, update_time as updateTime")+"from `userinfo`")
List<UserInfo> selectUserInfos();
二、结果映射
@Select("SELECT * FROM `userinfo`")
List<UserInfo> selectUserInfos();
复用结果映射关系
@ResultMap("resultMap")
@Select("select * from userinfo")
List<UserInfo> getUserInfoAll();@Result(id="resultMap", value={@Result(column = "delete_flag", property="deleteFlag"),@Result(column = "create_time", property="createTime"),@Result(column = "update_time", property="updateTime")
})
@Select("select * from `userinfo`")
List<UserInfo> selectUserInfo();
开启驼峰自动转换
mybatis:configuration: map-underscore-to-camel-case: true
xml
<resultMap id="BaseMap" type="cn.cangli.model.UserInfo"><id column="id" property="id"/><!--主键--><!--普通字段--><result column="delete_flag" property="deleteFlag"/><result column="create_time" property="createTime"/><result column="update_time" property="updateTime"/>
</resultMap>
<select id="selectAllUser" resultMap="BaseMap">select * from userinfo
</select>