最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mybatis各種查詢(xún)接口使用詳解

 更新時(shí)間:2022年11月09日 10:49:34   作者:學(xué)習(xí)使我快樂(lè)T  
這篇文章主要介紹了Mybatis各種查詢(xún)接口使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧

一、查詢(xún)一個(gè)實(shí)體類(lèi)對(duì)象

①創(chuàng)建SelectMapper接口

若sql語(yǔ)句查詢(xún)的結(jié)果為多條時(shí),一定不能以實(shí)現(xiàn)類(lèi)類(lèi)型作為方法的返回值

否則會(huì)拋出異常TooManyResultsException

若sql語(yǔ)句查詢(xún)的結(jié)果為1條時(shí),此時(shí)可以使用實(shí)體類(lèi)類(lèi)型或list集合類(lèi)型作為方法的返回值

    /**
     * 根據(jù)id查詢(xún)用戶(hù)信息
     * @param id
     * @return
     */
    User getUserById(@Param("id") Integer id);

②創(chuàng)建SelectMapper配置文件

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

③創(chuàng)建測(cè)試類(lèi)

    @Test
    public void testGetUserById(){
        SqlSession sqlSession = SqlSessionUtil.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        User user = mapper.getUserById(2);
        System.out.println(user);
        sqlSession.close();
    }

二、查詢(xún)一個(gè)list集合

①創(chuàng)建SelectMapper接口

    /**
     * 查詢(xún)所有的用戶(hù)信息
     * @return
     */
    List<User> getAllUser();

②創(chuàng)建SelectMapper配置文件

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

③創(chuàng)建測(cè)試類(lèi)

    @Test
    public void testGetAllUser(){
        SqlSession sqlSession = SqlSessionUtil.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        List<User> allUser = mapper.getAllUser();
        allUser.forEach(System.out::println);
        sqlSession.close();
    }

三、查詢(xún)單個(gè)數(shù)據(jù)

①創(chuàng)建SelectMapper接口

    /**
     * 查詢(xún)用戶(hù)的總記錄數(shù)
     * @return
     */
    Integer getCount();

②創(chuàng)建SelectMapper配置文件

在MyBatis中,對(duì)于Java中常用的類(lèi)型都設(shè)置了類(lèi)型別名

例如: java.lang.Integer -> int/integer

例如: int -> _int/_integer

例如: Map -> map,

例如: List -> list

<!--    Integer getCount();-->
<!--    <select id="getCount" resultType="java.lang.Integer">-->
    <select id="getCount" resultType="Integer">
        select count(*) from t_user
    </select>

③創(chuàng)建測(cè)試類(lèi)

    @Test
    public void testGetCount(){
        SqlSession sqlSession = SqlSessionUtil.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        Integer count = mapper.getCount();
        System.out.println(count);
        sqlSession.close();
    }

四、查詢(xún)一個(gè)數(shù)據(jù)為map集合

①創(chuàng)建SelectMapper接口

    /**
     * 根據(jù)用戶(hù)id查詢(xún)用戶(hù)信息為map集合
     * @param id
     * @return
     */
    Map<String, Object> getUserToMap(@Param("id") int id);

②創(chuàng)建SelectMapper配置文件

    <!--Map<String, Object> getUserToMap(@Param("id") int id);-->
    <!--結(jié)果: {password=123456, sex=男 , id=1, age=23, username=admin}-->
    <select id="getUserToMap" resultType="map">
        select * from t_user where id = #{id}
    </select>

③創(chuàng)建測(cè)試類(lèi)

    @Test
    public void testGetUserToMap(){
        SqlSession sqlSession = SqlSessionUtil.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
        Map<String, Object> userToMap = mapper.getUserToMap(2);
        System.out.println(userToMap);
        sqlSession.close();
    }

五、查詢(xún)多條數(shù)據(jù)為map集合

①創(chuàng)建SelectMapper接口

方式一:

    /**
     * 查詢(xún)所有用戶(hù)信息為map集合
     * @return
     * 將表中的數(shù)據(jù)以map集合的方式查詢(xún),一條數(shù)據(jù)對(duì)應(yīng)一個(gè)map;若有多條數(shù)據(jù),就會(huì)產(chǎn)生多個(gè)map集合,此
    時(shí)可以將這些map放在一個(gè)list集合中獲取
     */
//    List<Map<String, Object>> getAllUserToMap();

方式二:

    /**
     * 查詢(xún)所有用戶(hù)信息為map集合
     * @return
     * 將表中的數(shù)據(jù)以map集合的方式查詢(xún),一條數(shù)據(jù)對(duì)應(yīng)一個(gè)map;若有多條數(shù)據(jù),就會(huì)產(chǎn)生多個(gè)map集合,并
    且最終要以一個(gè)map的方式返回?cái)?shù)據(jù),此時(shí)需要通過(guò)@MapKey注解設(shè)置map集合的鍵,值是每條數(shù)據(jù)所對(duì)應(yīng)的
    map集合
     */
    @MapKey("id")
    Map<String, Object> getAllUserToMap();

②創(chuàng)建SelectMapper配置文件

    <!--Map<String, Object> getAllUserToMap();-->
    <select id="getAllUserToMap" resultType="map">
        select * from t_user
    </select>

③創(chuàng)建測(cè)試類(lèi)

    @Test
    public void testGetAllUserToMap(){
        SqlSession sqlSession = SqlSessionUtil.getSqlSession();
        SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
//        List<Map<String, Object>> allUserToMap = mapper.getAllUserToMap();
//        allUserToMap.forEach(System.out::println);
        Map<String, Object> allUserToMap = mapper.getAllUserToMap();
        System.out.println(allUserToMap);
        sqlSession.close();
    }

到此這篇關(guān)于Mybatis各種查詢(xún)接口使用詳解的文章就介紹到這了,更多相關(guān)Mybatis查詢(xún)接口內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

西贡区| 寻乌县| 宁乡县| 黄平县| 昌平区| 定西市| 信宜市| 宜良县| 朔州市| 阿合奇县| 邵东县| 广南县| 崇阳县| 南和县| 儋州市| 武隆县| 鄢陵县| 大足县| 柞水县| 靖远县| 资溪县| 新邵县| 盱眙县| 孝感市| 会同县| 博罗县| 桑日县| 上思县| 米脂县| 铜梁县| 霍林郭勒市| 新安县| 盐津县| 岳西县| 静海县| 汕头市| 琼中| 隆林| 林州市| 新和县| 汨罗市|