mybatis实现查询操作及获得添加的ID

 更新时间:2022年11月25日 14:22:03   作者:江南0o0  
这篇文章主要介绍了mybatis实现查询操作及获得添加的ID,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
  • 接口
/**
     * 获得所有用户
     * @return
     */
    List<User> findAll();

    /**
     * 根据id查询用户
     * @param id
     * @return
     */
    User findById(Integer id);

    /**
     *根据名字模糊查询
     * @param username
     * @return
     */
    List<User> findByName(String username);

    /**
     *查询总记录条数
     * @param
     * @return
     */
    int findTotal();
  • mapper
<!--   获得所有用户-->
    <select id="findAll" resultType="com.itheima.domain.User">
        select * from user;
    </select>

<!--    根据id查询用户-->
    <select id="findById" parameterType="int" resultType="com.itheima.domain.User">
        select * from user where id=#{id};
    </select>

<!--    根据名字模糊查询-->
    <select id="findByName" parameterType="String" resultType="com.itheima.domain.User">
        select * from user where username like #{username}
    </select>
    
<!--    查询总记录条数-->
    <select id="findTotal" resultType="int">
        select count(id) from user;
    </select>
  • 测试
/**
     * 测试查询所有
     */
    @Test
    public void testSelectAll(){
        List<User> user = userDao.findAll();
        for(User user1 : user){
            System.out.println(user1);
        }
    }


    /**
     * 测试根据id查询user
     */
    @Test
    public void testFindById() {
        User user = userDao.findById(57);
        System.out.println(user);
    }

    /**
     * 测试根据名字模糊查询
     */
    @Test
    public void testFindByName() {
        List<User> list = userDao.findByName("%王%");
        for(User user:list){
            System.out.println(user);
        }
    }

    /**
     * 测试获得总记录条数
     */
    @Test
    public void testFindTotal() {
        int count = userDao.findTotal();
        System.out.println(count);
    }

 添加一组数据,同时获得他的id值:last_insert_id()

接口

/**
     * 添加用户
     */
    void saveUser(User user);

mapper

<!--    添加一个用户;同时获得用户的id值-->
    <insert id="saveUser" parameterType="com.itheima.domain.User">

        <selectKey keyProperty="id" keyColumn="id" resultType="int" order="AFTER">
            select last_insert_id();
        </selectKey>

        insert into user(username,birthday,sex,address)
        values(#{username},#{birthday},#{sex},#{address})
    </insert>

测试

/**
     * 测试添加用户,同时获得添加之后id值
     */
    @Test
    public void testSave(){
        User user = new User();
        user.setUsername("mybatis inserid");
        user.setBirthday(new Date());
        user.setSex("女");
        user.setAddress("香港");

        System.out.println("保存操作之前:" + user);
        userDao.saveUser(user);
        System.out.println("保存操作之后:" + user);

    }

到此这篇关于mybatis实现查询操作及获得添加的ID的文章就介绍到这了,更多相关mybatis获得添加的ID内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java中的OPT算法实现方式

    java中的OPT算法实现方式

    这篇文章主要介绍了java中的OPT算法实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • Java集合中的Set之LinkedHashSet详解

    Java集合中的Set之LinkedHashSet详解

    这篇文章主要介绍了Java集合中的Set之LinkedHashSet详解,LinkedHashSet是Set集合的一个实现,具有set集合不重复的特点,同时具有可预测的迭代顺序,也就是我们插入的顺序,并且linkedHashSet是一个非线程安全的集合,需要的朋友可以参考下
    2023-09-09
  • Spring boot + mybatis + Vue.js + ElementUI 实现数据的增删改查实例代码(一)

    Spring boot + mybatis + Vue.js + ElementUI 实现数据的增删改查实例代码(一)

    这篇文章主要介绍了Spring boot + mybatis + Vue.js + ElementUI 实现数据的增删改查实例代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-05-05
  • Java不带break将导致case穿透问题

    Java不带break将导致case穿透问题

    这篇文章主要介绍了Java不带break将导致case穿透问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Java中Collection、List、Set、Map之间的关系总结

    Java中Collection、List、Set、Map之间的关系总结

    今天小编就为大家分享一篇关于Java中Collection、List、Set、Map之间的关系总结,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • java操作xml的方法汇总及解析

    java操作xml的方法汇总及解析

    这篇文章主要介绍了java操作xml的方法汇总及解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Linux中使用shell脚本管理Java应用程序

    Linux中使用shell脚本管理Java应用程序

    在日常开发和运维工作中,管理基于Java的应用程序是一项基础且频繁的任务,本文将通过一个示例脚本,展示如何利用Shell脚本简化这一流程,实现Java应用的一键式启动、停止与重启操作,本脚本不仅提升了工作效率,还确保了操作的标准化与可靠性
    2024-06-06
  • Mybatis的mapper.xml中if标签test判断的用法说明

    Mybatis的mapper.xml中if标签test判断的用法说明

    这篇文章主要介绍了Mybatis的mapper.xml中if标签test判断的用法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • 一文详解Spring任务执行和调度(小结)

    一文详解Spring任务执行和调度(小结)

    这篇文章主要介绍了一文详解Spring任务执行和调度(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Java中双大括号初始化的理解与使用

    Java中双大括号初始化的理解与使用

    最近重读Java 编程思想,读到有关实例化代码块儿的内容,使我对于使用两个大括号进行初始化有了更深的理解,下面这篇文章主要给大家介绍了关于Java中双大括号初始化的理解与使用的相关资料,需要的朋友可以参考下
    2022-06-06

最新评论