CREATE TABLE `advert` ( `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(100) COLLATE utf8mb4_bin NOT NULL COMMENT '广告名称', `position_id` int(20) NOT NULL COMMENT '广告位置ID', `media_id` int(20) NOT NULL COMMENT '广告图片ID', `link` varchar(500) COLLATE utf8mb4_bin NOT NULL COMMENT '广告链接', `status` int(1) unsigned zerofill NOT NULL COMMENT '状态,0:未启用,1:已启用,2:已结束', PRIMARY KEY (`id`) USING BTREE, KEY `FK_ad_image` (`media_id`), KEY `FK_ad_position` (`position_id`), CONSTRAINT `FK_ad_image` FOREIGN KEY (`media_id`) REFERENCES `media_file` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `FK_ad_position` FOREIGN KEY (`position_id`) REFERENCES `ad_position` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='广告表'; CREATE TABLE `ad_position` ( `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(50) COLLATE utf8mb4_bin NOT NULL COMMENT '位置名称', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='广告位置表'; CREATE TABLE `media_file` ( `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(30) COLLATE utf8mb4_bin NOT NULL COMMENT '媒体文件名称', `type` tinyint(1) NOT NULL COMMENT '媒体文件类型:0-图片,1-视频', `url` varchar(500) COLLATE utf8mb4_bin NOT NULL COMMENT '媒体文件URL地址', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='广告媒体文件表'; springboot项目用java写出三张表的orm对象,并演示如何往advert表用basemapper添加数据
时间: 2023-08-12 07:23:27 浏览: 58
好的,以下是三张表的ORM对象代码:
Advert.java:
```java
public class Advert {
private Integer id;
private String name;
private Integer positionId;
private Integer mediaId;
private String link;
private Integer status;
private MediaFile mediaFile;
private AdPosition adPosition;
// 省略 getter 和 setter 方法
}
```
AdPosition.java:
```java
public class AdPosition {
private Integer id;
private String name;
// 省略 getter 和 setter 方法
}
```
MediaFile.java:
```java
public class MediaFile {
private Integer id;
private String name;
private Integer type;
private String url;
// 省略 getter 和 setter 方法
}
```
使用 BaseMapper 往 advert 表添加数据的代码如下:
```java
@Autowired
private AdvertMapper advertMapper;
public void addAdvert() {
Advert advert = new Advert();
advert.setName("广告名称");
advert.setPositionId(1);
advert.setMediaId(1);
advert.setLink("广告链接");
advert.setStatus(1);
MediaFile mediaFile = new MediaFile();
mediaFile.setId(1);
advert.setMediaFile(mediaFile);
AdPosition adPosition = new AdPosition();
adPosition.setId(1);
advert.setAdPosition(adPosition);
advertMapper.insert(advert);
}
```
其中,AdvertMapper 是继承了 BaseMapper 的接口,insert() 方法是 BaseMapper 中自带的插入数据的方法。在这里,我们创建了一个 Advert 对象,并设置了其属性值,其中 mediaFile 和 adPosition 对象都是 advert 对象中的关联对象,需要先创建并设置好它们的属性值,再将它们设置到 advert 对象中。最后,调用 advertMapper.insert(advert) 方法将 advert 对象插入到 advert 表中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)