首页 > 其他分享 >mybatis查询功能

mybatis查询功能

时间:2022-08-20 13:02:34浏览次数:83  
标签:Map 功能 List 查询 user mybatis id select

预设的类型别名

这些别名都大小写不敏感

Mybatis的各种查询功能

查询出的数据只有一条

  • 可以通过实体类对象接收

  • 可以通过List接收

  • 可以通过Map接收

查询出的数据有多条

  • 可以通过Lst接收

  • 可以通过Lsit<Map<String, Object>>接收

  • 在mapper方法上使用@MapKey(value="唯一认证的字段")注解

查询(mapper里的方法返回)一个实体类对象

若查询到的只有一条,可以实体类对象接收,但是如果可能有多条,就不能用实体类对象了。会抛异常TooManyResultsException

User selectForOne(@Param("id")Integer id);
 <select id="selectForOne" resultType="User">
        select * from t_user where id = #{id}
    </select>

查询一个List集合

查询出的数据有多条或者只有一条,都可以用List集合接收

List<User> selectAll();
<select id="selectAll" resultType="User">
        select * from t_user
    </select>

查询单行/单列

MyBatis中设置了默认的类型别名

Integer selectCount();
 <select id="selectCount" resultType="Integer">
        select count(*) from t_user
    </select>

查询一条数据返回一个Map集合

结果:{字段名=字段值,字段名=字段值}

Map<String, Object> selectUserMapById(@Param("id")Integer id);
<select id="selectUserMapById" resultType="Map">
        select * from t_user where id = #{id};
    </select>

查询多条数据

使用List<Map<>>

List<Map<String, Object>> selectAllUserListMap();
<select id="selectAllUserListMap" resultType="Map">
        select * from t_user
    </select>

使用@Map注解

在mapper方法上使用@MapKey(value="唯一认证的字段"),此时就可以将每条数据转换的map集合作为值,某个字段的值作为键

@MapKey("id")
    Map<String, Object> selectAllUserMap();
<select id="selectAllUserMap" resultType="Map">
        select * from t_user
    </select>

标签:Map,功能,List,查询,user,mybatis,id,select
From: https://www.cnblogs.com/phonk/p/16607542.html

相关文章

  • mybatis获取参数值
    封装SqlSessionUtils/**  *获取SqlSession  *@paramb是否自动管理事务  *@return返回sqlsession  */  publicstaticSqlSession......
  • mybatis特殊sql的执行
    特殊sql的执行模糊查询根据用户名模糊查询List<User>selectLikeUserById(@Param("id")Integerid);建议使用:直接用"%"#{value}"%"拼接<selectid="selectLikeUserByI......
  • mybatis自定义参数
    首先我们先定义两个表t_emp/t_dept由于我们的pojo中,使用了驼峰命名法,而数据表中使用的是下划线命名法解决字段名和属性名不一致为字段起别名,保持与属性名一致select......
  • mybatis缓存
    MyBatis缓存只对查询功能有效一级缓存一级缓存是SqlSession级别的,通过同一个SqlSession查询的数据会被缓存,下次查询相同的数据,就会从缓存中直接获取,不会从数据库重新访......
  • 删除选中功能代码实现
    删除选中功能代码实现publicclassDelUserServletextendsHttpServlet{@OverrideprotectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)t......
  • mybatisplus使用xml
    一、配置xml路径mybatis-plus:mapper-locations:classpath:mapper/*.xml二、编写Mapper里面的方法publicinterfaceUserMapperextendsBaseMapper{ListfindAll()......
  • 删除选中功能、删除选中功能代码实现
    删除选中功能图解  删除选中功能代码实现jsp页面c:forEachitems="${users}"var="user"varStatus="s"><tr><td><inputtype="checkbox"></td>......
  • MybatisPlus分页 假性失效
    背景:前端告诉我,页面只能显示1000条数据,实际上有4701条数据,为什么其他数据不能显示,后端返回的total就是1000。我看了后端分页插件配置也没有发现不正确的地方,使用了page()方......
  • SpringBoot整合Redis实现常用功能
    SpringBoot整合Redis实现常用功能建议大小伙们,在写业务的时候,提前画好流程图,思路会清晰很多。文末有解决缓存穿透和击穿的通用工具类。1登陆功能我想,登陆功能......
  • elasticsearch中使用curl进行的简单查询
    curl:-X:指定http的请求方式,有HEAD、GET、POST、PUT、DELETE-d:指定要传输的数据-H:指定http的请求头信息curl-XPUThttp://ip:port/索引名?pretty--创建索引cur......