天猫双十一有个积分换魔盒的活动,总共50万台天猫魔盒(box),每个用户(urser)可以用99个天猫积分(point)置换一台魔盒,且每人限换一台。 设计一套java接口并实现下单(order)逻辑。 参考(但不局限于)下面的下的逻辑: 1、创建订单 2、扣减用户积分 3、扣减魔盒库存 4、下单成功 同时请回答: 1、数据库表结构如何设计,有哪些表,分别有什么作用? 2、下单过程中哪些地方可能成为瓶颈?如何解决或改善? 3、是否会用到数据库事务,哪些地方会用到?如果不用数据库事务,如何保证数据的一致性? order.changeUserInfo(userId); order.chandeBoxIsOrdered(BoxId);