当前位置: 首页 > news >正文

做电影网站一年赚多少万州网站制作

做电影网站一年赚多少,万州网站制作,做网站不用tomcat行吗,北京正邦品牌设计公司《重学Java设计模式》之 建造者模式 《重学Java设计模式》之 原型模式 《重学Java设计模式》之 单例模式 模拟发奖多种商品 工程结构 奖品发放接口 package com.yys.mes.design.factory.store;public interface ICommodity {/*** Author Sherry* Date 14:20 2024/11/6**/voi…

《重学Java设计模式》之 建造者模式

《重学Java设计模式》之 原型模式

《重学Java设计模式》之 单例模式

模拟发奖多种商品

工程结构

奖品发放接口

package com.yys.mes.design.factory.store;public interface ICommodity {/*** @Author Sherry* @Date 14:20 2024/11/6**/void sendCommodity(String uId, String commodityId, String bizId);
}

购物卡发放实现类

package com.yys.mes.design.factory.store.impl;import com.yys.mes.design.factory.store.ICommodity;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;@Service
@Slf4j
public class CardCommodityService implements ICommodity {@Overridepublic void sendCommodity(String uId, String commodityId, String bizId) {//购物卡log.info("购物卡发放成功!");}
}

优惠券发放实现类

package com.yys.mes.design.factory.store.impl;import com.yys.mes.design.factory.store.ICommodity;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;import java.util.Map;@Service
@Slf4j
public class CouponCommodityService implements ICommodity {@Overridepublic void sendCommodity(String uId, String commodityId, String bizId) {//优惠券发放log.info("优惠券发放成功!");}
}

实物发放实现类

package com.yys.mes.design.factory.store.impl;import com.yys.mes.design.factory.store.ICommodity;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;@Service
@Slf4j
public class GoodsCommodityService implements ICommodity {@Overridepublic void sendCommodity(String uId, String commodityId, String bizId) {//实物商品log.info("实物商品发放成功!");}
}

奖品类型工厂

通过 Map<String, ICommodity> 来存储所有的实现类。Spring 会自动将所有实现了 ICommodity 接口的 Bean 注入到这个 Map 中。我们可以通过传入类型(例如 "card")来获取对应的实现类。

package com.yys.mes.design.factory.config;import com.yys.mes.design.factory.store.ICommodity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;import java.util.Map;@Component
public class CommodityFactory {private final Map<String, ICommodity> commodityServices;@Autowiredpublic CommodityFactory(Map<String, ICommodity> commodityServices) {this.commodityServices = commodityServices;}// 根据类型返回对应的ICommodity实现public ICommodity getCommodityService(String type) {ICommodity commodityService = commodityServices.get(type + "CommodityService");if (commodityService == null) {throw new IllegalArgumentException("未知的奖品类型: " + type);}return commodityService;}
}

调用工厂

package com.yys.mes.design.factory.config;import com.yys.mes.design.factory.store.ICommodity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;@Component
public class StoreFactory {private final CommodityFactory commodityFactory;@Autowiredpublic StoreFactory(CommodityFactory commodityFactory) {this.commodityFactory = commodityFactory;}public void distributeCommodity(String type, String uId, String commodityId, String bizId) {// 通过工厂获取对应的ICommodity实现ICommodity commodityService = commodityFactory.getCommodityService(type);commodityService.sendCommodity(uId, commodityId, bizId);}
}

测试验证

package com.yys.mes.design.factory.Controller;import com.yys.mes.design.factory.config.StoreFactory;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/send")
public class ExampleController {@Resourceprivate StoreFactory storeFactory;@GetMapping("/distribute")public String distributeCommodity(@RequestParam String type, @RequestParam String uId,@RequestParam String commodityId, @RequestParam String bizId) {storeFactory.distributeCommodity(type, uId, commodityId, bizId);return "奖品发放成功!";}
}

http://www.yayakq.cn/news/311980/

相关文章:

  • 动静分离网站架构wordpress网站迁移教程
  • 北京网站建设116networdpress设置qq邮箱设置
  • 百度站长电脑版做海报可以借鉴的网站
  • 做个手机网站有必要吗网站标题关键词描述
  • 修改公司网站网页做慧聪网价格网站价格
  • 众筹平台网站建设中国空间站实时位置
  • 网站有了备案号之后能做什么网站建设万户
  • 永久免费自助网站流媒体网站建设方案
  • 网站关键词有哪些快设计网站官网
  • 网站开发要用什么语言手表网站域名
  • 代充网站怎么做wordpress 移动主菜单
  • 做网站赚50万做木材加工的企业网站首页
  • 做php网站用什么软件好公司网站建设属于软件销售
  • 摄影师签约有哪些网站静安建设机械网站
  • 买别人做的网站能盗回吗如何知道一个网站用什么建设的
  • html5网站开发视频教程wordpress imgedit
  • 云平台网站优化工业设计外观
  • 余姚做网站设计东营网络营销
  • 网站建设需要学编程吗网站301检测工具
  • 榆林做网站多少钱爱钱进运营平台
  • 湖南网站建设公司速来磐石网络做网站需要准备的工具
  • 怎建立自己网站做淘宝客wordpress数据库前缀
  • 网站建设网站优化相关资讯文章鞍山网站制作
  • 电话销售怎么做 网站山东济南报备小程序
  • 企业网站建站软件二建专业有哪些专业
  • 网站如何选择服务器做服务网站发展背景
  • 网站建设方案的需求分析如何做百度免费推广
  • 网站建设 交易保障网页浏览器主要通过ftp协议
  • 用什么做网站的访问量统计wordpress 引用图片不显示
  • 西宁的网站设计简历电子模版免费下载