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

合肥网站建设方案策划网站怎么做吸引人

合肥网站建设方案策划,网站怎么做吸引人,广州十大高端网站建设公司,网站原文件怎么上传空间目录 前言 五个部分 名词解释 代码 controller层 HelloService接口 实现类 自定义注解 上下文 策略工厂 Java SPI配置 验证 前言 五个部分 接口、实现类、自定义注解、上下文、策略工厂 名词解释 自定义注解(方便后期增加实现类后灵活控制策略) 上下文(初始化…目录 前言 五个部分 名词解释 代码 controller层 HelloService接口 实现类 自定义注解 上下文 策略工厂 Java SPI配置   验证 前言 五个部分 接口、实现类、自定义注解、上下文、策略工厂 名词解释 自定义注解(方便后期增加实现类后灵活控制策略) 上下文(初始化接口,进行数据承接) 策略工厂(利用java SPI使接口与实现解耦并通过验证注解是否存在调用不同的策略) 代码 controller层 package com.zsp.sheji.JavaSPI;import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController RequestMapping(hello) public class HelloController {PostMapping(/pay)public String pay(){PayContext payContext new PayContext();payContext.setHelloService(PayFactory.makeHello(helloOne));String result payContext.sayHello(你好);return result;} }HelloService接口 package com.zsp.sheji.JavaSPI;public interface HelloService {String sayHello(String hello); }实现类 这里写了两个实现类模拟真实环境中的不同策略调用 HelloOneServiceImpl package com.zsp.sheji.JavaSPI;import org.springframework.stereotype.Service;Pay(type helloOne) Service public class HelloOneServiceImpl implements HelloService{Overridepublic String sayHello(String hello) {return hello one;} }HelloTwoServiceImpl package com.zsp.sheji.JavaSPI;import org.springframework.stereotype.Service;Pay(type helloTwo) Service public class HelloTwoServiceImpl implements HelloService{Overridepublic String sayHello(String hello) {return hello two;} }自定义注解 package com.zsp.sheji.JavaSPI;import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;Target(ElementType.TYPE) Retention(RetentionPolicy.RUNTIME) public interface Pay {String type(); }上下文 package com.zsp.sheji.JavaSPI;import org.springframework.stereotype.Component;Component public class PayContext {private HelloService helloService;public void setHelloService(HelloService helloService){this.helloService helloService;}public PayContext(){}public String sayHello(String hello){// 上下文进行数据承接return this.helloService.sayHello(hello);} }策略工厂 package com.zsp.sheji.JavaSPI; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.ServiceLoader;public class PayFactory {private static MapString,HelloService helloMap new HashMap();static {ServiceLoaderHelloService load ServiceLoader.load(HelloService.class);IteratorHelloService iterator load.iterator();while (iterator.hasNext()) {HelloService next iterator.next();Class? extends HelloService aClass next.getClass();if (!aClass.isAnnotationPresent(com.zsp.sheji.JavaSPI.Pay.class)) {// 不存在添加进去throw new IllegalStateException(class: aClass expect com.zsp.sheji.策略模式高级注解方式.PayType, but not found!);}helloMap.put(aClass.getAnnotation(Pay.class).type(), next);}}public static HelloService makeHello(String type){return helloMap.get(type);} }Java SPI配置   文件名com.zsp.sheji.JavaSPI.HelloService   对应接口的全限定类名 com.zsp.sheji.JavaSPI.HelloOneServiceImpl com.zsp.sheji.JavaSPI.HelloTwoServiceImpl 项目结构 验证
http://www.zqtcl.cn/news/246309/

相关文章:

  • 怎么查网站后台地址电商网站怎样做优化才最合理
  • 太原网站建设总部在哪服务器做多个网站
  • 自己做网站怎么能被访问Net网站开发招聘
  • 春晗环境建设有限公司网站wordpress伪静态卡死
  • 网站建设后期维护流程车培训网站建设
  • 云南建设企业网站wordpress用户角色权限
  • 代码做网站常用单词成品短视频网站源码搭建
  • 北京网站建设推四川省建设厅燃气网站
  • 网站 功能呢网站建设设计师的工作内容
  • 网站设计素材包微信公众号平台官网免费注册
  • 做设计灵感的网站网站网站建设
  • 华强北附近网站建设电商网站建设规划
  • 泰和网站制作长尾词排名优化软件
  • 国外做的好的鲜花网站万网二手已备案域名
  • 那个网站做的系统最好开奖视频网站开发
  • 学设计的网站推荐南京做网站南京乐识专业
  • 企业网站建设调查问卷重庆网站制作外包
  • 要建设一个网站需要什么北京优化网站公司
  • 多语言网站建设方案大同建设网站
  • 测网站打开的速度的网址wordpress 逻辑代码
  • 网站代码开发徐州网站建设青州陈酿
  • 建网站的软件有哪些做网站怎么挣钱赚钱
  • 徐州市建设局招投标网站谷歌网站的主要内容
  • 门户网站建设工作情况汇报花店网站建设课程设计论文
  • 长春绿园网站建设哪里制作企业网站
  • 建设网站计划ppt模板核酸二维码
  • 宁波网络推广制作seo关键词推广公司
  • 东莞市网站推广西安推广公司无网不胜
  • 全国网站建设有实力建筑人才网123
  • 海安网站设计公司网站开发好学嘛