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

外贸移动端网站模板西安企业网站seo

外贸移动端网站模板,西安企业网站seo,旅游网站后台模板,做药的文献一般在哪些网站查找目录 一. 案例1二. 案例2三. 案例3四. 案例4 枚举类聚合封装消息 一. 案例1 涉及到EnumMap的实际使用 ⏹定义一个枚举类,用来表示日本的各种支付方法对应的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 EnumMap<PayEnum, IPay> commandMap = new EnumMap<PayEnum, 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 ResponseEntity<Void> 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 lang="en" xmlns:th="http://www.thymeleaf.org">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><button id="btn">发送请求</button>
</body>
<script type="text/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;charset=utf-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中
List<RoleEnum> 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);}
}

调用

Optional<MessageEnum> 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 Map<IAngConst, 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.mmbaike.com/news/42260.html

相关文章:

  • 做快三网站谷歌seo网站运营
  • com网站注册合肥网络营销公司
  • 网站开发下人员配置软件开发流程八个步骤
  • 手机app软件开发公司排名上海搜索引擎优化1
  • 学做ps的软件的网站有哪些内容百度网址大全电脑版旧版本
  • 电子工程师网站中国新闻
  • 哪些网站做的人比较少最近三天的新闻大事国内
  • 北京网站建设公司排行每日新闻摘要30条
  • 安居客网站应该如何做app软件下载站seo教程
  • unity做网站竞价排名点击
  • 如何选择盐城网站开发跨境电商seo什么意思
  • 南通做网站企业旅游最新资讯 新闻
  • 安徽省建设工程资料上传网站最新的销售平台
  • 山东网站优化公司黑帽seo培训
  • 国外b站免费版长春百度推广公司
  • 邵阳网站建设多少钱网络推广和竞价怎么做
  • 增加网站备案杭州seo公司排名
  • 自己做的网站添加交费功能谷歌优化技巧
  • 学校网站制作公司企业网站seo服务
  • 转做批发鞋子的网站太原seo排名收费
  • 广东快速做网站公司游戏推广引流
  • 满山红厦门网站建设嘉兴seo外包服务商
  • 中国建设银行陕西分行官方网站互联网广告是做什么的
  • 用C语言做网站登录界面自己怎么做一个网页
  • 武汉前端网站开发公司哈尔滨seo优化公司
  • 佛山网站建设外包公司百度打开百度搜索
  • 上传wordpress网站危机公关处理方案
  • 外贸网站建设制作教程深圳网络营销策划
  • 知名跟单网站做信号提供方北京全网营销推广
  • 谷歌seo价格网站seo搜索引擎优化案例