MyBatis第三天
一丶ORM映射
1.1MyBatis自动ORM失效
数据库列表无法与属性名一一对应,二者不同时,无法自动ORM
解决方案一:使用AS创建别名
解决方案二:
id:自定义名称 对应 resultType
type:对象实体类名称
<resultMap id="Empmanager_user" type="Empmanager"> <id property="username" column="username"></id> <result property="password" column="password"></result> </resultMap> <select id="selsectId" resultType="Empmanager_user"> SELECT * FROM empmanager where username = #{username} </select>
property:属性名称
column:数据库列名
二丶一对一关系
id:自定义 type:实体类型
<resultMap id="Empmanager_user" type="Empmanager"> <id property="username" column="username"></id> <result property="password" column="password"></result> association 针对一对一 多对一 <association property="emp" javaType="Emp"> <id property="id" column="id"></id> <result property="name" column="name"></result> </association> </resultMap>
三丶一对多关系和多对一的关系
<resultMap id="Empmanager_user" type="Empmanager"> <id property="username" column="username"></id> <result property="password" column="password"></result> <collection property="emp" ofType="Emp"> <id property="id" column="id"></id> <result property="name" column="name"></result> </collection> </resultMap>
多对一 和 一对一 的 xml配置一样的
四丶多对多的关系
<resultMap type="many.to.many.Groups" id="getGroupMap"> <id column="gid" property="gid"/> <result column="gname" property="gname"/> <collection property="users" ofType="many.to.many.Users"> <id column="uid" property="uid"/> <result column="uname" property="uname"/> </collection> </resultMap>
与一对多 没有区别
浙公网安备 33010602011771号