MyBatis的ResultMap及分页
resultMap
1、数据库中的各字段名
2、JavaBean中的类
密码和数据库不一样!
public class User { private int id; //id private String name; //姓名 private String password; //密码和数据库不一样! //构造 //set/get //toString() }
3、Mapper接口
//根据id查询用户 User selectUserById(int id);
4、Mapper.xml
<select id="selectUserById" resultType="user"> select * from user where id = #{id} </select>
5、Test测试
@Test public void testSelectUserById() { SqlSession session = MybatisUtils.getSession(); //获取SqlSession连接 UserMapper mapper = session.getMapper(UserMapper.class); User user = mapper.selectUserById(1); System.out.println(user); session.close(); }
结果:
-
User{id=1, name='王萍', password='null'}
-
查询出来发现 password 为空 . 说明出现了问题!
分析:
-
select * from user where id = #{id} 可以看做
select id,name,pwd from user where id = #{id}
-
mybatis会根据这些查询的列名(会将列名转化为小写,数据库不区分大小写) ,