SpringBoot与Mybatis整合(包含generate自动生成代码工具,数据库表一对一,一对多,关联关系中间表的查询)

本篇博客主要贴一些建设项目时需注意的地方,下面直接进入主题。

项目代码地址:https://github.com/YonJarLuo/Springboot_mybatis

一、新建maven工程

       pom.xml文件:

二、配置application.properties

       指定实体类路径和mapper.xml

三、数据库表和数据准备

           导入项目里的*.sql脚本至数据库,创建表

四、配置generator.xml

           配置generator.xml,让它根据数据库表,自动为我们生成实体类、mapper和mapper.xml

五、执行generate

           因为我们在pom.xml中,引入了插件。

六、编写Service层、Controller,根据需求,修改实体类,Mapper,mapper.xml

           注意一下几个地方:@RestController相当于@Controller与@ResponseBody;

七、编写启动类

           Application启动类要在controller上一层

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
1. 前端上传图片 前端使用单上传图片,将图片提交到后端,后端接收到图片后将其存储到服务器上,并将图片在服务器上的地址返回给前端。 2. 存储图片地址到数据库 在存储帖子信息时,将图片的地址存储到数据库中。同时,在查询帖子信息时,也需要查询图片地址信息,并将其封装到帖子实体类中。 3. Mybatis映射文件配置 在Mybatis映射文件中,需要定义帖子实体类和图片地址实体类的映射关系。由于一个帖子可以有多张图片,需要使用一对多的关系来映射。 4. 查询代码实现 在查询帖子信息时,需要同时查询帖子信息和图片地址信息,并将其封装到帖子实体类中。可以通过Mybatis一对多关系来实现。 例如,可以定义一个帖子包含多个图片地址的实体类: ``` public class PostWithImages { private Integer id; private String title; private String content; private List<String> images; // getter and setter } ``` 在Mybatis映射文件中,定义一对多关系: ``` <resultMap id="postWithImages" type="com.example.PostWithImages"> <id column="id" property="id" /> <result column="title" property="title" /> <result column="content" property="content" /> <collection property="images" ofType="String"> <result column="image_url" /> </collection> </resultMap> <select id="getPostWithImages" resultMap="postWithImages"> SELECT p.id, p.title, p.content, i.image_url FROM post p LEFT JOIN image i ON p.id = i.post_id WHERE p.id = #{id} </select> ``` 在查询代码中调用该查询语句,可以得到一个包含帖子信息和图片地址信息的实体类: ``` PostWithImages postWithImages = postMapper.getPostWithImages(postId); ``` 其中,postId是帖子的ID。查询结果包含帖子的标题、内容和所有图片的地址。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新西雪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值