- 新建数据库表的字段-这里就不贴上了 在下面链接有
https://www.cnblogs.com/rzkwz/p/12853899.html
public interface UserMapper { //查询全部用户 List<User> getUserAll(); }
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.rzk.mapper.UserMapper"> <!--查询全部用户--> <select id="getUserAll" resultType="User"> select * from user </select> </mapper>
@Test public void getUserAll(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); List<User> all = mapper.getUserAll(); for (User user : all) { System.out.println(user); } }
<!--查询全部用户--> <select id="getUserAll" resultType="User"> select id,name AS username,pwd as password from user </select>
结果集映射
<resultMap id="UserMap" type="user"> <!--property: 实体类中的属性 column:数据库中的字段--> <!--数据库中的一个列 映射成数据库中的字段--> <result property="username" column="name"/> <result property="password" column="pwd"/> </resultMap> <!--查询全部用户--> <select id="getUserAll" resultMap="UserMap"> select * from user </select>
resultMap元素是MyBatis中最重要、最强大的元素。它允许您去掉JDBC从resultset检索数据所需的90%的代码,并且在某些情况下允许您做JDBC甚至不支持的事情。实际上,为复杂语句的join映射之类的东西编写等价的代码可能需要跨越数千行代码。ResultMaps的设计是这样的:简单的语句根本不需要显式的结果映射,而更复杂的语句只需要描述这些关系即可。