SpringBoot实战2

目录

1.如何返回两个类型的数据?User和Booth

2.如何使用MyBatis遍历一个数组进行查询?

3.前端要的数据太多太杂,我们拼接多个List,前端找数据困难,浪费时间。因此我们进行三表联表查询。

1.首先创建一个vo包,专门用来解决数据不对应的问题,然后创建一个对应的VOjava类

2.在这个类中放任何你想要得到的数据,记得添加一个@Data注解

3.从controller调用service的方法,从service调用mapper的方法,mapper有对应的xml,xml中是与数据库进行交互的sql

四、总结


1.如何返回两个类型的数据?User和Booth

针对这两个不同类型的List,我们最后的返回值要求将这两个List组合起来,就可以返回一个Map,将两个list放入(put)map中。

2.如何使用MyBatis遍历一个数组进行查询?

类似这样的sql,我们如何在xml中写呢?

1,2,3,4就是arrayList中存储的数据。

我的实际应用:

每个用户有关联的booth_number,这些booth_number都存储在arrayList中,然后用这个list查询所有的摊位信息。即selelct * from  booths where booth_number in(1,2,3,4);

下面是我的代码:

 <select id="selectRentList" resultType="com.team.entity.Booths">
        SELECT * FROM booths
        WHERE booth_number IN
        <foreach item="usingBooth" collection="list" open="(" separator="," close=")">
            #{usingBooth}
        </foreach>
    </select>

使用一个foreach循环,遍历list中的内容,collection是要遍历的数据,open用(开始,close用(结束,separator用【,】分隔。这也很好的体现了MyBatis动态sql的特性。

3.前端要的数据太多太杂,我们拼接多个List,前端找数据困难,浪费时间。因此我们进行三表联表查询。

那我们enetity中没有对应的实体类怎么办?

1.首先创建一个vo包,专门用来解决数据不对应的问题,然后创建一个对应的VOjava类

2.在这个类中放任何你想要得到的数据,记得添加一个@Data注解

*MyBatis中数据都被封装了,我们需要使用setter和getter方法来修改和得到数据。

3.从controller调用service的方法,从service调用mapper的方法,mapper有对应的xml,xml中是与数据库进行交互的sql

mapper需要和xml的resulyMap保持一致:

以下是一个xml实例:

**对于复杂sql,在写xml之前,可以先把sql在数据库中执行一下,语句正确再粘到xml中。这样可以节约时间,否则每次都要重启项目。

四、总结

今天先到这里,大家有什么想法,欢迎在评论区留言。我已经大四了,现在才发现代码的优雅与魅力,我想学很多东西,最近了解到了robot-framework,后续会有更新,欢迎大家关注。

相关推荐

  1. SpringBoot:实战项目TILAS智能学习辅助系统1.2

    2024-02-04 10:18:02       13 阅读
  2. springboot2.2.9整合kafka之KafkaListener实现原理

    2024-02-04 10:18:02       28 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-04 10:18:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-04 10:18:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-04 10:18:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-04 10:18:02       18 阅读

热门阅读

  1. 蓝桥 第三周 分治 排序

    2024-02-04 10:18:02       36 阅读
  2. 速盾:免备案网站服务器接入cdn有哪些好处

    2024-02-04 10:18:02       27 阅读
  3. ubuntu server 22.04.3 配置 wifi

    2024-02-04 10:18:02       26 阅读
  4. ubuntu22.04@laptop OpenCV安装

    2024-02-04 10:18:02       30 阅读
  5. Day11代码随想录

    2024-02-04 10:18:02       32 阅读
  6. Linux 命令行速查表

    2024-02-04 10:18:02       33 阅读
  7. Oracle出现超出打开游标最大数的解决方法

    2024-02-04 10:18:02       31 阅读