自动映射
在数据库列名和java类属性名相同的情况,mybatis会自动将数据库的值自动匹配到java类的属性当中。
java的price等变量
mysql的price等字段
mybatis会自动将数据库的值自动匹配到java类的属性当中。
开启驼峰命名
在application中配置
mybatis:type-aliases-package: cn.itcast.user.pojoconfiguration:map-underscore-to-camel-case: true
mybatis也可开启对java的驼峰命名与数据库的字段进行匹配,例如Java的userId
数据库的user_id
ResultMap进行手动映射
如果两者的命名不匹配,并且也不满足驼峰命名匹配,MyBatis就无法完成表的信息与实体类之间的对应关系,而是需要借助ResultMap来进行手动映射。其中property是指java模型的id变量,column是指数据库的id字段
<resultMap type="xxx.domain.User" id="UserInfo"><result property="id" column="id" /><result property="userId" column="user_id" /><result property="name" column="name" /><result property="price" column="price" /><result property="num" column="num" />
</resultMap><select id="selectUser" parameterType="xxx" resultMap="UserInfo">select * from user where id=#{id}
</select>