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

河北住房和城乡建设厅网站电话南通营销网站制作

河北住房和城乡建设厅网站电话,南通营销网站制作,义乌企业网站设计,wordpress的mysql扩展目录 一. 案例1二. 案例2三. 案例3四. 案例4 枚举类聚合封装消息 一. 案例1 涉及到EnumMap的实际使用 ⏹定义一个枚举类#xff0c;用来表示日本的各种支付方法对应的code import com.fasterxml.jackson.annotation.JsonFormat;// 让jackson将前台的数据封装数据到枚举类中 J… 目录 一. 案例1二. 案例2三. 案例3四. 案例4 枚举类聚合封装消息 一. 案例1 涉及到EnumMap的实际使用 ⏹定义一个枚举类用来表示日本的各种支付方法对应的code import com.fasterxml.jackson.annotation.JsonFormat;// 让jackson将前台的数据封装数据到枚举类中 JsonFormat(shape JsonFormat.Shape.OBJECT) public enum PayEnum {RAKUTEN_PAY(1),PAY_PAY(2),ID_PAY(3);private String code;PayEnum(String code) {this.code code;}public String getCode() {return code;} }⏹用来接收前台的数据的form实体类 import lombok.Data;Data public class PayForm {// 自定义的枚举类private PayEnum payMethod;private String msg; }⏹支付接口以及其实现类 // 支付接口 public interface IPay {void pay(); }// ID支付 public class IdPay implements IPay {Overridepublic void pay() {System.out.println(ID支付...);} }// paypay支付 public class PayPay implements IPay {Overridepublic void pay() {System.out.println(paypay支付...);} }// 乐天支付 public class RakuTenPay implements IPay {Overridepublic void pay() {System.out.println(乐天pay支付...);} }⏹后台的实际应用 EnumMap的key是枚举类通过EnumMap将枚举类与枚举类对应的支付接口进行聚合 import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import java.util.EnumMap;Controller RequestMapping(/test35) public class Test35Controller {// 使用EnumMap对枚举类和枚举类对应的支付方式进行映射聚合private static final EnumMapPayEnum, IPay commandMap new EnumMapPayEnum, IPay(PayEnum.class){{put(PayEnum.ID_PAY, new IdPay());put(PayEnum.PAY_PAY, new PayPay());put(PayEnum.RAKUTEN_PAY, new RakuTenPay());}};GetMapping(/init)public ModelAndView init() {ModelAndView modelAndView new ModelAndView();modelAndView.setViewName(test35);return modelAndView;}PostMapping(/pay)public ResponseEntityVoid pay(RequestBody PayForm payForm) {System.out.println(payForm);// 判断支付方式是否存在if (!commandMap.containsKey(payForm.getPayMethod())) {System.out.println(支付方式不存在......);return ResponseEntity.noContent().build();}// 支付方式存在的话调用支付接口进行支付IPay payMethod commandMap.get(payForm.getPayMethod());payMethod.pay();return ResponseEntity.noContent().build();} }⏹前台 !DOCTYPE html html langen xmlns:thhttp://www.thymeleaf.org headmeta charsetUTF-8titleTitle/title /head bodybutton idbtn发送请求/button /body script typetext/javascript th:src{/js/public/jquery-3.6.0.min.js}/script script$(function() {bindEvent();});function bindEvent() {$(#btn).click(() {const jsonData {msg: 110120119,// 代表paypay支付payMethod: 2};$.ajax({url: /test35/pay,type: POST,data: JSON.stringify(jsonData),contentType: application/json;charsetutf-8,success: function (data, status, xhr) {console.log(data);}});});} /script /html⏹效果 二. 案例2 ⏹定义一个接口 public interface RoleOperation {// 表示某个角色可以做哪些op操作String op(); }⏹定义一个枚举类实现接口 // 定義一個枚舉類實現接口 public enum RoleEnum implements RoleOperation {// 系统管理员(有A操作权限)ROLE_ROOT_ADMIN {Overridepublic String op() {return ROLE_ROOT_ADMIN: has AAA permission;}},// 订单管理员(有B操作权限)ROLE_ORDER_ADMIN {Overridepublic String op() {return ROLE_ORDER_ADMIN: has BBB permission;}},// 普通用户(有C操作权限)ROLE_NORMAL {Overridepublic String op() {return ROLE_NORMAL: has CCC permission;}};}⏹调用 // 角色的名称 String role ROLE_ROOT_ADMIN;// 将枚举类中所有的角色都放到List中 ListRoleEnum roleEnums Arrays.asList(RoleEnum.values()); // 判断List中是否有相应的角色 if (roleEnums.contains(role)) {// 如果有的话,就执行该角色所对应的方法RoleEnum roleEnum RoleEnum.valueOf(role);System.out.println(roleEnum.op()); } else {System.out.println(對應的角色不存在); }三. 案例3 public enum MessageEnum {SUCCESS(1, 成功),FAIL(-1, 失败),TIME_OUT(-2, 网络超时),PARAM_ERROR(-3, 参数错误);private int code;private String message;MessageEnum(int code, String message) {this.code code;this.message message;}public int getCode() {return this.code;}public String getMessage() {return this.message;}// 根据code获取对应的value.如果没有对应的code,就返回一个nullpublic static MessageEnum getMessageEnum(int code) {return Arrays.stream(MessageEnum.values()).filter(x - x.code code).findFirst().orElse(null);} }⏹调用 OptionalMessageEnum messageEnum Optional.ofNullable(MessageEnum.getMessageEnum(10)); if (messageEnum.isPresent()) {System.out.println(messageEnum.get().getMessage()); } else {System.out.println(對應的code不存在); }四. 案例4 枚举类聚合封装消息 import java.util.HashMap; import java.util.Map;public final class AngConst {// 用于枚举类实现的接口public interface IAngConst {}// 枚举类实现接口public enum AngAliPay implements IAngConst {LOG_001,LOG_002,LOG_003}public enum AngPayPay implements IAngConst {LOG_001,LOG_002,LOG_003}public enum AngIDPay implements IAngConst {LOG_001,LOG_002,LOG_003}// 枚举类实现接口的妙处在此处体现// 或者可以使用EnumMap来进行聚合public static MapIAngConst, String dataMap new HashMap(){{// 支付方式—AngAliPayput(AngAliPay.LOG_001, AngAliPay处理开始...);put(AngAliPay.LOG_002, AngAliPay处理被中断...);put(AngAliPay.LOG_003, AngAliPay处理结束...);// 支付方式—AngPayPayput(AngPayPay.LOG_001, AngPayPay处理开始...);put(AngPayPay.LOG_002, AngPayPay处理被中断...);put(AngPayPay.LOG_003, AngPayPay处理结束...);// 支付方式—AngIDPayput(AngIDPay.LOG_001, AngIDPay处理开始...);put(AngIDPay.LOG_002, AngIDPay处理被中断...);put(AngIDPay.LOG_003, AngIDPay处理结束...);}}; }
http://www.w-s-a.com/news/37859/

相关文章:

  • 合肥网站建设市场分析网站收录后怎么做排名
  • 湖南企业网站建设如何推广手机网站
  • 网站建设项目经历网站推广服务 商务服务
  • 加强网站的建设福州seo排名外包
  • 做婚庆找什么网站有专门为个人网站做推广的吗
  • 网站搭建要求模板学编程需要英语基础吗
  • 网上如何建网站卖量具净水机企业网站源码
  • 网站推广 软件规划设计公司年终总结
  • 视频网站开发方法微站网建站系统
  • 渐变网站网页界面设计的宗旨是什么
  • 网站排名提升工具免费韶关做网站公司
  • 做网站一个月可以赚多少钱东营市建设工程招标网
  • 网站开发工具阿里云怎么做网站
  • 用html做静态网站成都专业logo设计公司
  • 哪里有免费建站平台233小游戏网页版在线玩
  • 为什么我的网站做不起来网站能搜索到
  • 方又圆网站建设信息流广告二级代理
  • 公司管理网站首页网站后台编辑框不显示
  • aspnet网站开发模板备案 网站建设方案书
  • 营销软件网站wordpress优秀的破解主题
  • 卧龙区网站建设国内漂亮网站欣赏
  • 服装 网站模板 wordpress石家庄做网站的公司有哪些
  • 惠州技术支持网站建设百度怎样注册免费的网站
  • 无锡哪里有做网站的公司泸州网站建设公司
  • 怎么进行网站推广jsp可以做那些小网站
  • 懒人手机网站wordpress修改秒速
  • WordPress资讯网站用花生壳做网站
  • 关于营销方面的网站建设网站怎么克隆
  • 站长网seo综合查询工具电商公司简介
  • 全能网站建设教程广告制作公司需要什么设备