springboot项目中的一个广告功能,广告包括广告名称,广告位置,广告图片,开始时间,结束时间,广告链接和广告状态,请设计一个合理的数据库表,并示例对于广告功能增删查改的java代码
时间: 2023-09-27 20:10:20 浏览: 42
数据库表设计如下:
```
CREATE TABLE `advertisement` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL COMMENT '广告名称',
`position` varchar(255) NOT NULL COMMENT '广告位置',
`image_url` varchar(255) NOT NULL COMMENT '广告图片',
`start_time` datetime NOT NULL COMMENT '开始时间',
`end_time` datetime NOT NULL COMMENT '结束时间',
`link_url` varchar(255) NOT NULL COMMENT '广告链接',
`status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '广告状态:0-未发布,1-已发布',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='广告表';
```
对于广告功能的增删查改Java代码如下:
```
@Service
public class AdvertisementService {
@Autowired
private AdvertisementMapper advertisementMapper;
/**
* 新增广告
* @param advertisementDTO 广告信息
* @return 新增结果
*/
public Boolean addAdvertisement(AdvertisementDTO advertisementDTO){
Advertisement advertisement = new Advertisement();
BeanUtils.copyProperties(advertisementDTO, advertisement);
return advertisementMapper.insert(advertisement) > 0;
}
/**
* 删除广告
* @param id 广告ID
* @return 删除结果
*/
public Boolean deleteAdvertisement(Integer id){
return advertisementMapper.deleteByPrimaryKey(id) > 0;
}
/**
* 修改广告
* @param advertisementDTO 广告信息
* @return 修改结果
*/
public Boolean updateAdvertisement(AdvertisementDTO advertisementDTO){
Advertisement advertisement = new Advertisement();
BeanUtils.copyProperties(advertisementDTO, advertisement);
return advertisementMapper.updateByPrimaryKey(advertisement) > 0;
}
/**
* 根据ID查询广告
* @param id 广告ID
* @return 广告信息
*/
public AdvertisementDTO getAdvertisementById(Integer id){
Advertisement advertisement = advertisementMapper.selectByPrimaryKey(id);
AdvertisementDTO advertisementDTO = new AdvertisementDTO();
BeanUtils.copyProperties(advertisement, advertisementDTO);
return advertisementDTO;
}
/**
* 分页查询广告列表
* @param pageNum 当前页码
* @param pageSize 页面大小
* @return 广告列表
*/
public List<AdvertisementDTO> getAdvertisementList(Integer pageNum, Integer pageSize){
PageHelper.startPage(pageNum, pageSize);
List<Advertisement> advertisementList = advertisementMapper.selectAll();
List<AdvertisementDTO> advertisementDTOList = new ArrayList<>();
for (Advertisement advertisement : advertisementList) {
AdvertisementDTO advertisementDTO = new AdvertisementDTO();
BeanUtils.copyProperties(advertisement, advertisementDTO);
advertisementDTOList.add(advertisementDTO);
}
return advertisementDTOList;
}
}
```