标签:list 使用 get rom 多对一 utils 简单 src 字段名
ResultMap:
解决的问题:属性名和字段名不一致。
解决方法:
下面着重介绍ResultMap方法:
部分环境设置:
public class User { private int id; //id private String name; //姓名 private String password; //密码和数据库不一样! //构造 //set/get //toString() }
//根据id查询用户 User selectUserById(int id);
<select id="selectUserById" resultType="user">
select * from user where id = #{id}
</select>
resultType填写之后要填写的resultType标签的id。
<resultMap id="UserMap" type="user"> <!-- id为主键 --> <!--<id column="id" property="id"/> <result column="name" property="name"/>--> <!-- column是数据库表的列名 , property是对应实体类的属性名 --> <result column="pwd" property="password"/> </resultMap>
对于字段名跟实体类中的属性名相同就可不需配置,字段名和属性名不同才需要配置。
测试:
@Test public void test01(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); List<User> users = userMapper.selectUser(); logger.info("info:进入了testlog4j方法"); logger.debug("debug:进入了testlog4j方法"); logger.error("error:进入了testlog4j方法"); for (User user : users) { System.out.println(user); } sqlSession.close(); }
ResultMap不单单能解决字段与属性名不一致的问题,也能轻松解决数据库字段映射实体复杂类型的问题,也就是解决数据库一对多,多对一的情况。
如果世界总是这么简单就好了(#^.^#)
标签:list 使用 get rom 多对一 utils 简单 src 字段名
原文地址:https://www.cnblogs.com/zitai/p/11816088.html