JAVA全系列 教程
3762个小节阅读:7092.5k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
在管理员新增商品后,可以将商品设置为秒杀商品。“秒杀”是网络卖家发布一些超低价格的商品,所有买家在同一时间网上抢购的一种销售方式。用户秒杀商品时,需要通过一些技术方案降低服务器的压力,这个我们编写用户端时再做介绍。管理员管理秒杀商品,需要先在数据库拿到相应的普通商品,再将该商品构造为秒杀商品添加到数据库中。接下来我们在通用模块编写秒杀商品服务接口:
xxxxxxxxxx
public interface SeckillGoodsService {
/**
* 添加秒杀商品
*
* @param seckillGoods 秒杀商品实体
*/
void add(SeckillGoods seckillGoods);
/**
* 修改秒杀商品
*
* @param seckillGoods 秒杀商品实体
*/
void update(SeckillGoods seckillGoods);
/**
* 分页查询秒杀商品
*
* @param page 页数
* @param size 每页条数
* @return 查询结果
*/
Page<SeckillGoods> findPage(int page, int size);
}
在商品服务模块编写秒杀商品Mapper:
xxxxxxxxxx
public interface SeckillGoodsMapper extends BaseMapper<SeckillGoods> {
}
在商品服务模块编写秒杀商品服务实现类:
xxxxxxxxxx
@DubboService
public class SeckillGoodsServiceImpl implements SeckillGoodsService {
@Autowired
private SeckillGoodsMapper seckillGoodsMapper;
@Override
public void add(SeckillGoods seckillGoods) {
seckillGoodsMapper.insert(seckillGoods);
}
@Override
public void update(SeckillGoods seckillGoods) {
seckillGoodsMapper.updateById(seckillGoods);
}
@Override
public Page<SeckillGoods> findPage(int page, int size) {
return seckillGoodsMapper.selectPage(new Page(page, size), null);
}
}
在后台管理API模块秒杀商品控制器:
/**
* 秒杀商品
*/
@RestController
@RequestMapping("/seckillGoods")
public class SeckillGoodsController {
@DubboReference
private SeckillGoodsService seckillGoodsService;
/**
* 添加秒杀商品
* @param seckillGoods 秒杀商品实体
* @return 操作结果
*/
@PostMapping("/add")
public BaseResult add(@RequestBody SeckillGoods seckillGoods) {
seckillGoodsService.add(seckillGoods);
return BaseResult.ok();
}
/**
* 修改秒杀商品
* @param seckillGoods 秒杀商品实体
* @return 操作结果
*/
@PutMapping("/update")
public BaseResult update(@RequestBody SeckillGoods seckillGoods) {
seckillGoodsService.update(seckillGoods);
return BaseResult.ok();
}
/**
* 分页查询秒杀商品
* @param page 页数
* @param size 每页条数
* @return 查询结果
*/
@GetMapping("/findPage")
public BaseResult<Page<SeckillGoods>> findPage(int page, int size) {
Page<SeckillGoods> seckillGoodsPage = seckillGoodsService.findPage(page, size);
return BaseResult.ok(seckillGoodsPage);
}
}