Java 集合  (内附方法表格)

本文详细介绍了Java中的集合框架,包括Collection和Map两大接口下的List、Set子接口及其常用实现类如ArrayList、LinkedList、HashSet、HashMap等。文章探讨了集合的特点、遍历方式、泛型的应用以及相关工具类Collections的使用。此外,还对比了ArrayList、Vector、LinkedList的区别,并讲解了自定义类型在集合中实现元素唯一性的关键方法hashCode()和equals()的覆盖。

一、集合

  1. 集合:一种操作比较便利的对象容器,可以用于存储多个对象(工具)
  2. 位置:位于java.util 包中
  3. 分为两大集合体系: ①Collection
              ②Map
    在这里插入图片描述

二、Collection(根接口) 集合体系

在这里插入图片描述
1) 根接口:Collection
2) 常用的功能方法
在这里插入图片描述

1. 子接口:List

 ①特点:存储 任意类型的对象,有序、有下标、元素可以重复的。
 ②功能方法:
在这里插入图片描述

 ③ArrayList开发重点
   1)底层用数组实现,查询效率较高,增(插 入)删效率较慢。线程不安全,执行效率较高。

【注】创建ArrayList对象时,底层数组并没有完成初始化,长度为0,当第一次调用 add方法时,代表实际意义使用ArrayList集合存储对象,底层数组才初始化,空间默认长度为 10,当存储对象达到数组上限,自动完成扩容,每一次扩容倍数为 1.5倍(如果出现小数取整数位的长度)

 ④ Vector:底层数组实现,查询效率较高,增(插入)删效率较慢。线程安全,效率较低。
 ⑤ LinkedList:底层用链表实现,查询效率比较低,增(插 入)删效率较高。线程不安全,运行效率较高。

面试题目: 写出 ArrayList、Vector、LinkedList 的区别

2.集合的遍历

① 下标遍历:用循环变量控制集合下标

forEach 遍历 【开发应用重点】
    for ( 数据类型 变量名 : 集合名 ) {
    }

③ 迭代器(Iterator)遍历:是 forEach底层实现原理

3. 泛型

1)泛型集合:数据安全性的集合,强制要求集合中存储的数据类型是统一的
  ① List<数据类型> = new ArrayList<数据类型>();
  ② List<数据类型> = new ArrayList<>();
2) 自定义的泛型类:
  ① class 类型 <泛型标识> {   }
      注意:泛型标识通常用K/V/T/E等
  ② 泛型类中泛型标识具体的数据类型是根据对象创建时指定:
      类名< 具体的数据类型 > 引用名 = new 类名< 具体的数据类型 > ();

4.Collections工具类

1) 位于java.util包中对集合元素进行操作的工具类
2) 功能方法:
在这里插入图片描述
3)内置比较器:
Collections.sort(集合名); 如果参与排序的集合中存储的是自定义类型的对象,则对象对应类需要实现java.lang.Comparable接口,同时实现接口中 compareTo(T t)方法指定排序规则。

在这里插入代码片

5.子接口:Set

 1)特点:存储任意类型的对象,无序、无下标、元素内容不可以重复
 2)方法:均来自父接口Collection
 3)实现类 HashSet
     如果自定义类型的对象往 HashSet中存储,为了保证元素内容不重复,需要做到以下两点: 【开发应用重点】

① 覆盖 hashCode方法
  必须保证内容相同的对象返回值相同的哈希码值.为提高效率,将对象的所有属性拼接为int类型数据返回
②覆盖 equals方法
  保证内容相同的对象返回true

 4)其他实现类
  ①LinkedHashSet :HashSet的子类,可顺序添加元素。
  ②TreeSet :是SortedSet接口的实现类。可以对集合中元素按照内容进行排序。
          TreeSet保证元素不重复,取决compareTo方法的返回值,返回值为0,代表内容相同的元素,直接拒绝添加到TreeSet集合中。

【注】自定义类型对象的排序
  a.内置排序
    自定义类型的对象类需实现java.lang.Comparable接口,并实现其compareTo方法
  b.外置排序
    在程序中定义一个内部类,其实现java.util.Comparetor接口,并实现其compare方法

三、Map(根接口) 集合体系

在这里插入图片描述

1. 特点:

(1) 以键值对形式存储(key-value),一个键值对是Map集合中的一个元素。
(2) 键:无序、无下标、元素不允许重复(唯一)
(3) 值:无序、无下标、元素允许重复

2. 常用方法:

在这里插入图片描述

3. 实现类:HashMap

开发时通常使用String/Integer作为HashMap的键。
1)HashMap特点:JDK1.2版本,线程不安全,但运行效率高。允许null作为键和值。
2)其他实现类:
 ①LinkedHashMap:是HashMap子类,可实现按照元素添加顺序添加元素到集合中。
 ②Hashtable:JDK1.0版本,线程安全,但运行效率慢,不允许nill作为键和值。
 ③Properties:是Hashtable的子类,要求key和value都是String类型,通常用于配置文件的读取
 ④TreeMap:是SortedMap的实现类,SortedMap是Map的子接口。
       TreeMap的功能为按照键的规则排序

【面试】:HashMap的Hashtable的区别

4. 遍历方式:

(1) 键遍历:通过 Map中的keySet方法获取map集合中所有的键【重点】

    K-key , V-value
Set<K> ks = map.keySet(); // 将Map中所有的键存入一个Set集合中
for(K key:ks){
	V value = map.get(key);
}

(2) 值遍历:通过Map中 values方法获取map集合中所有值
(3) 键值对遍历:通过Map中的entrySet方法获取Map中所有键值对

# 订单管理 ## 提交订单 **接口地址**:`/api/order/orderInfo/auth/submitOrder` **请求方式**:`POST` **请求数据类型**:`application/x-www-form-urlencoded,application/json` **响应数据类型**:`*/*` **接口描述**: **请求示例**: ```javascript { "userAddressId": 0, "feightFee": 0, "remark": "", "orderItemList": [ { "id": 0, "createTime": "", "updateTime": "", "isDeleted": 0, "orderId": 0, "skuId": 0, "skuName": "", "thumbImg": "", "skuPrice": 0, "skuNum": 0 } ] } ``` **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema | | ---------------------------------- | -------------- | -------- | -------- | -------------- | ------------ | | orderInfoDto | 请求参数实体类 | body | true | OrderInfoDto | OrderInfoDto | | &emsp;&emsp;userAddressId | 送货地址id | | true | integer(int64) | | | &emsp;&emsp;feightFee | 运费 | | true | number | | | &emsp;&emsp;remark | 备注 | | false | string | | | &emsp;&emsp;orderItemList | 订单项实体类 | | true | array | OrderItem | | &emsp;&emsp;&emsp;&emsp;id | 唯一标识 | | false | integer | | | &emsp;&emsp;&emsp;&emsp;createTime | 创建时间 | | false | string | | | &emsp;&emsp;&emsp;&emsp;updateTime | 修改时间 | | false | string | | | &emsp;&emsp;&emsp;&emsp;isDeleted | 是否删除 | | false | integer | | | &emsp;&emsp;&emsp;&emsp;orderId | 订单id | | false | integer | | | &emsp;&emsp;&emsp;&emsp;skuId | 商品sku编号 | | true | integer | | | &emsp;&emsp;&emsp;&emsp;skuName | 商品sku名字 | | true | string | | | &emsp;&emsp;&emsp;&emsp;thumbImg | 商品sku图片 | | true | string | | | &emsp;&emsp;&emsp;&emsp;skuPrice | 商品sku价格 | | true | number | | | &emsp;&emsp;&emsp;&emsp;skuNum | 商品购买的数量 | | true | integer | | **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | ---------- | | 200 | OK | ResultLong | **响应参数**: | 参数名称 | 参数说明 | 类型 | schema | | -------- | ---------- | -------------- | -------------- | | code | 业务状态码 | integer(int32) | integer(int32) | | message | 响应消息 | string | | | data | 订单id | integer(int64) | integer(int64) | **响应示例**: ```javascript { "code": 0, "message": "", "data": 0 } ``` ## 获取订单分页列表 **接口地址**:`/api/order/orderInfo/auth/{page}/{limit}` **请求方式**:`GET` **请求数据类型**:`application/x-www-form-urlencoded` **响应数据类型**:`*/*` **接口描述**: **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema | | ----------- | ---------- | -------- | -------- | -------------- | ------ | | page | 当前页码 | path | true | integer(int32) | | | limit | 每页记录数 | path | true | integer(int32) | | | orderStatus | 订单状态 | query | false | integer(int32) | | **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | ----------------------- | | 200 | OK | ResultPageInfoOrderInfo | **响应参数**: | 参数名称 | 参数说明 | 类型 | schema | | ---------------------------------------------- | ------------------------------------------------------------ | ----------------- | ----------------- | | code | 业务状态码 | integer(int32) | integer(int32) | | message | 响应消息 | string | | | data | | PageInfoOrderInfo | PageInfoOrderInfo | | &emsp;&emsp;total | | integer(int64) | | | &emsp;&emsp;list | OrderInfo | array | OrderInfo | | &emsp;&emsp;&emsp;&emsp;id | 唯一标识 | integer | | | &emsp;&emsp;&emsp;&emsp;createTime | 创建时间 | string | | | &emsp;&emsp;&emsp;&emsp;updateTime | 修改时间 | string | | | &emsp;&emsp;&emsp;&emsp;isDeleted | 是否删除 | integer | | | &emsp;&emsp;&emsp;&emsp;userId | 会员_id | integer | | | &emsp;&emsp;&emsp;&emsp;nickName | 昵称 | string | | | &emsp;&emsp;&emsp;&emsp;orderNo | 订单号 | string | | | &emsp;&emsp;&emsp;&emsp;couponId | 使用的优惠券 | integer | | | &emsp;&emsp;&emsp;&emsp;totalAmount | 订单总额 | number | | | &emsp;&emsp;&emsp;&emsp;couponAmount | 优惠券 | number | | | &emsp;&emsp;&emsp;&emsp;originalTotalAmount | 原价金额 | number | | | &emsp;&emsp;&emsp;&emsp;feightFee | 运费 | number | | | &emsp;&emsp;&emsp;&emsp;payType | 支付方式【1->微信】 | integer | | | &emsp;&emsp;&emsp;&emsp;orderStatus | 订单状态【0->待付款;1->待发货;2->已发货;3->待用户收货,已完成;-1->已取消】 | integer | | | &emsp;&emsp;&emsp;&emsp;receiverName | 收货人姓名 | string | | | &emsp;&emsp;&emsp;&emsp;receiverPhone | 收货人电话 | string | | | &emsp;&emsp;&emsp;&emsp;receiverTagName | 收货人地址标签 | string | | | &emsp;&emsp;&emsp;&emsp;receiverProvince | 省份/直辖市 | string | | | &emsp;&emsp;&emsp;&emsp;receiverCity | 城市 | string | | | &emsp;&emsp;&emsp;&emsp;receiverDistrict | 区 | string | | | &emsp;&emsp;&emsp;&emsp;receiverAddress | 详细地址 | string | | | &emsp;&emsp;&emsp;&emsp;paymentTime | 支付时间 | string | | | &emsp;&emsp;&emsp;&emsp;deliveryTime | 发货时间 | string | | | &emsp;&emsp;&emsp;&emsp;receiveTime | 确认收货时间 | string | | | &emsp;&emsp;&emsp;&emsp;remark | 订单备注 | string | | | &emsp;&emsp;&emsp;&emsp;cancelTime | 取消订单时间 | string | | | &emsp;&emsp;&emsp;&emsp;cancelReason | 取消订单原因 | string | | | &emsp;&emsp;&emsp;&emsp;orderItemList | 订单项实体类 | array | OrderItem | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;id | 唯一标识 | integer | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;createTime | 创建时间 | string | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;updateTime | 修改时间 | string | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;isDeleted | 是否删除 | integer | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;orderId | 订单id | integer | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;skuId | 商品sku编号 | integer | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;skuName | 商品sku名字 | string | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;thumbImg | 商品sku图片 | string | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;skuPrice | 商品sku价格 | number | | | &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;skuNum | 商品购买的数量 | integer | | | &emsp;&emsp;pageNum | | integer(int32) | | | &emsp;&emsp;pageSize | | integer(int32) | | | &emsp;&emsp;size | | integer(int32) | | | &emsp;&emsp;startRow | | integer(int64) | | | &emsp;&emsp;endRow | | integer(int64) | | | &emsp;&emsp;pages | | integer(int32) | | | &emsp;&emsp;prePage | | integer(int32) | | | &emsp;&emsp;nextPage | | integer(int32) | | | &emsp;&emsp;isFirstPage | | boolean | | | &emsp;&emsp;isLastPage | | boolean | | | &emsp;&emsp;hasPreviousPage | | boolean | | | &emsp;&emsp;hasNextPage | | boolean | | | &emsp;&emsp;navigatePages | | integer(int32) | | | &emsp;&emsp;navigatepageNums | | array | integer(int32) | | &emsp;&emsp;navigateFirstPage | | integer(int32) | | | &emsp;&emsp;navigateLastPage | | integer(int32) | | **响应示例**: ```javascript { "code": 0, "message": "", "data": { "total": 0, "list": [ { "id": 0, "createTime": "", "updateTime": "", "isDeleted": 0, "userId": 0, "nickName": "", "orderNo": "", "couponId": 0, "totalAmount": 0, "couponAmount": 0, "originalTotalAmount": 0, "feightFee": 0, "payType": 0, "orderStatus": 0, "receiverName": "", "receiverPhone": "", "receiverTagName": "", "receiverProvince": "", "receiverCity": "", "receiverDistrict": "", "receiverAddress": "", "paymentTime": "", "deliveryTime": "", "receiveTime": "", "remark": "", "cancelTime": "", "cancelReason": "", "orderItemList": [ { "id": 0, "createTime": "", "updateTime": "", "isDeleted": 0, "orderId": 0, "skuId": 0, "skuName": "", "thumbImg": "", "skuPrice": 0, "skuNum": 0 } ] } ], "pageNum": 0, "pageSize": 0, "size": 0, "startRow": 0, "endRow": 0, "pages": 0, "prePage": 0, "nextPage": 0, "isFirstPage": true, "isLastPage": true, "hasPreviousPage": true, "hasNextPage": true, "navigatePages": 0, "navigatepageNums": [], "navigateFirstPage": 0, "navigateLastPage": 0 } } ``` ## 获取订单信息 **接口地址**:`/api/order/orderInfo/auth/{orderId}` **请求方式**:`GET` **请求数据类型**:`application/x-www-form-urlencoded` **响应数据类型**:`*/*` **接口描述**: **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema | | -------- | -------- | -------- | -------- | -------------- | ------ | | orderId | 订单id | path | true | integer(int64) | | **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | --------------- | | 200 | OK | ResultOrderInfo | **响应参数**: | 参数名称 | 参数说明 | 类型 | schema | | ---------------------------------- | ------------------------------------------------------------ | ----------------- | -------------- | | code | 业务状态码 | integer(int32) | integer(int32) | | message | 响应消息 | string | | | data | | OrderInfo | OrderInfo | | &emsp;&emsp;id | 唯一标识 | integer(int64) | | | &emsp;&emsp;createTime | 创建时间 | string(date-time) | | | &emsp;&emsp;updateTime | 修改时间 | string(date-time) | | | &emsp;&emsp;isDeleted | 是否删除 | integer(int32) | | | &emsp;&emsp;userId | 会员_id | integer(int64) | | | &emsp;&emsp;nickName | 昵称 | string | | | &emsp;&emsp;orderNo | 订单号 | string | | | &emsp;&emsp;couponId | 使用的优惠券 | integer(int64) | | | &emsp;&emsp;totalAmount | 订单总额 | number | | | &emsp;&emsp;couponAmount | 优惠券 | number | | | &emsp;&emsp;originalTotalAmount | 原价金额 | number | | | &emsp;&emsp;feightFee | 运费 | number | | | &emsp;&emsp;payType | 支付方式【1->微信】 | integer(int32) | | | &emsp;&emsp;orderStatus | 订单状态【0->待付款;1->待发货;2->已发货;3->待用户收货,已完成;-1->已取消】 | integer(int32) | | | &emsp;&emsp;receiverName | 收货人姓名 | string | | | &emsp;&emsp;receiverPhone | 收货人电话 | string | | | &emsp;&emsp;receiverTagName | 收货人地址标签 | string | | | &emsp;&emsp;receiverProvince | 省份/直辖市 | string | | | &emsp;&emsp;receiverCity | 城市 | string | | | &emsp;&emsp;receiverDistrict | 区 | string | | | &emsp;&emsp;receiverAddress | 详细地址 | string | | | &emsp;&emsp;paymentTime | 支付时间 | string(date-time) | | | &emsp;&emsp;deliveryTime | 发货时间 | string(date-time) | | | &emsp;&emsp;receiveTime | 确认收货时间 | string(date-time) | | | &emsp;&emsp;remark | 订单备注 | string | | | &emsp;&emsp;cancelTime | 取消订单时间 | string(date-time) | | | &emsp;&emsp;cancelReason | 取消订单原因 | string | | | &emsp;&emsp;orderItemList | 订单项实体类 | array | OrderItem | | &emsp;&emsp;&emsp;&emsp;id | 唯一标识 | integer | | | &emsp;&emsp;&emsp;&emsp;createTime | 创建时间 | string | | | &emsp;&emsp;&emsp;&emsp;updateTime | 修改时间 | string | | | &emsp;&emsp;&emsp;&emsp;isDeleted | 是否删除 | integer | | | &emsp;&emsp;&emsp;&emsp;orderId | 订单id | integer | | | &emsp;&emsp;&emsp;&emsp;skuId | 商品sku编号 | integer | | | &emsp;&emsp;&emsp;&emsp;skuName | 商品sku名字 | string | | | &emsp;&emsp;&emsp;&emsp;thumbImg | 商品sku图片 | string | | | &emsp;&emsp;&emsp;&emsp;skuPrice | 商品sku价格 | number | | | &emsp;&emsp;&emsp;&emsp;skuNum | 商品购买的数量 | integer | | **响应示例**: ```javascript { "code": 0, "message": "", "data": { "id": 0, "createTime": "", "updateTime": "", "isDeleted": 0, "userId": 0, "nickName": "", "orderNo": "", "couponId": 0, "totalAmount": 0, "couponAmount": 0, "originalTotalAmount": 0, "feightFee": 0, "payType": 0, "orderStatus": 0, "receiverName": "", "receiverPhone": "", "receiverTagName": "", "receiverProvince": "", "receiverCity": "", "receiverDistrict": "", "receiverAddress": "", "paymentTime": "", "deliveryTime": "", "receiveTime": "", "remark": "", "cancelTime": "", "cancelReason": "", "orderItemList": [ { "id": 0, "createTime": "", "updateTime": "", "isDeleted": 0, "orderId": 0, "skuId": 0, "skuName": "", "thumbImg": "", "skuPrice": 0, "skuNum": 0 } ] } } ``` ## 确认下单 **接口地址**:`/api/order/orderInfo/auth/trade` **请求方式**:`GET` **请求数据类型**:`application/x-www-form-urlencoded` **响应数据类型**:`*/*` **接口描述**: **请求参数**: 暂无 **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | ------------- | | 200 | OK | ResultTradeVo | **响应参数**: | 参数名称 | 参数说明 | 类型 | schema | | ---------------------------------- | -------------- | -------------- | -------------- | | code | 业务状态码 | integer(int32) | integer(int32) | | message | 响应消息 | string | | | data | | TradeVo | TradeVo | | &emsp;&emsp;totalAmount | 结算总金额 | number | | | &emsp;&emsp;orderItemList | 订单项实体类 | array | OrderItem | | &emsp;&emsp;&emsp;&emsp;id | 唯一标识 | integer | | | &emsp;&emsp;&emsp;&emsp;createTime | 创建时间 | string | | | &emsp;&emsp;&emsp;&emsp;updateTime | 修改时间 | string | | | &emsp;&emsp;&emsp;&emsp;isDeleted | 是否删除 | integer | | | &emsp;&emsp;&emsp;&emsp;orderId | 订单id | integer | | | &emsp;&emsp;&emsp;&emsp;skuId | 商品sku编号 | integer | | | &emsp;&emsp;&emsp;&emsp;skuName | 商品sku名字 | string | | | &emsp;&emsp;&emsp;&emsp;thumbImg | 商品sku图片 | string | | | &emsp;&emsp;&emsp;&emsp;skuPrice | 商品sku价格 | number | | | &emsp;&emsp;&emsp;&emsp;skuNum | 商品购买的数量 | integer | | **响应示例**: ```javascript { "code": 0, "message": "", "data": { "totalAmount": 0, "orderItemList": [ { "id": 0, "createTime": "", "updateTime": "", "isDeleted": 0, "orderId": 0, "skuId": 0, "skuName": "", "thumbImg": "", "skuPrice": 0, "skuNum": 0 } ] } } ``` ## 立即购买 **接口地址**:`/api/order/orderInfo/auth/buy/{skuId}` **请求方式**:`GET` **请求数据类型**:`application/x-www-form-urlencoded` **响应数据类型**:`*/*` **接口描述**: **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema | | -------- | --------- | -------- | -------- | -------------- | ------ | | skuId | 商品skuId | path | true | integer(int64) | | **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | ------------- | | 200 | OK | ResultTradeVo | **响应参数**: | 参数名称 | 参数说明 | 类型 | schema | | ---------------------------------- | -------------- | -------------- | -------------- | | code | 业务状态码 | integer(int32) | integer(int32) | | message | 响应消息 | string | | | data | | TradeVo | TradeVo | | &emsp;&emsp;totalAmount | 结算总金额 | number | | | &emsp;&emsp;orderItemList | 订单项实体类 | array | OrderItem | | &emsp;&emsp;&emsp;&emsp;id | 唯一标识 | integer | | | &emsp;&emsp;&emsp;&emsp;createTime | 创建时间 | string | | | &emsp;&emsp;&emsp;&emsp;updateTime | 修改时间 | string | | | &emsp;&emsp;&emsp;&emsp;isDeleted | 是否删除 | integer | | | &emsp;&emsp;&emsp;&emsp;orderId | 订单id | integer | | | &emsp;&emsp;&emsp;&emsp;skuId | 商品sku编号 | integer | | | &emsp;&emsp;&emsp;&emsp;skuName | 商品sku名字 | string | | | &emsp;&emsp;&emsp;&emsp;thumbImg | 商品sku图片 | string | | | &emsp;&emsp;&emsp;&emsp;skuPrice | 商品sku价格 | number | | | &emsp;&emsp;&emsp;&emsp;skuNum | 商品购买的数量 | integer | | **响应示例**: ```javascript { "code": 0, "message": "", "data": { "totalAmount": 0, "orderItemList": [ { "id": 0, "createTime": "", "updateTime": "", "isDeleted": 0, "orderId": 0, "skuId": 0, "skuName": "", "thumbImg": "", "skuPrice": 0, "skuNum": 0 } ] } } ``` # 支付宝接口 ## 支付宝异步回调 **接口地址**:`/api/order/alipay/callback/notify` **请求方式**:`POST` **请求数据类型**:`application/x-www-form-urlencoded` **响应数据类型**:`*/*` **接口描述**: **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema | | -------- | -------- | -------- | -------- | -------- | ------ | | paramMap | | query | true | object | | **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | ------ | | 200 | OK | | **响应参数**: 暂无 **响应示例**: ```javascript ``` ## 支付宝下单 **接口地址**:`/api/order/alipay/submitAlipay/{orderNo}` **请求方式**:`GET` **请求数据类型**:`application/x-www-form-urlencoded` **响应数据类型**:`*/*` **接口描述**: **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema | | -------- | -------- | -------- | -------- | -------- | ------ | | orderNo | 订单号 | path | true | string | | **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | ------ | | 200 | OK | Result | **响应参数**: | 参数名称 | 参数说明 | 类型 | schema | | -------- | ---------- | -------------- | -------------- | | code | 业务状态码 | integer(int32) | integer(int32) | | message | 响应消息 | string | | | data | 业务数据 | object | | **响应示例**: ```javascript { "code": 0, "message": "", "data": {} } ``` ## 支付宝同步回调 **接口地址**:`/api/order/alipay/callback/return` **请求方式**:`GET` **请求数据类型**:`application/x-www-form-urlencoded` **响应数据类型**:`*/*` **接口描述**: **请求参数**: 暂无 **响应状态**: | 状态码 | 说明 | schema | | ------ | ---- | ------ | | 200 | OK | | **响应参数**: 暂无 **响应示例**: 在购物车的基础上 帮我实现一下支付宝功能
06-25
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>QQ会员导航</title> <style> .zong{ width: 100%; background-color: rgba(0,0,0,0.5); text-align: left; clear: both; overflow: hidden; height: 185px; margin: 0 auto; text-align: center; align-items: center; } ul li{ list-style-type: none; display: flex; float: left; color: white; font-size: 40px; height: 185px; line-height: 160px; } img{ float: left; } .rong{ width: 4000px; height: 100px; float: left; height: 185px; } li:hover{ color: blue; } a{ font-size: 40px; text-decoration: none; line-height: 100px; } .c1{ border: 2px rgb(246, 216, 92) solid; width: 200px; height: 80px; line-height: 80px; float: left; border-radius: 40px; text-align: center; position: relative; top: 40px; } .c2{ border: 2px rgb(246, 216, 92) solid; width: 260px; height: 80px; line-height: 100px; text-align: center; border-radius: 40px; position: relative; top: 15px; right:-2300px; background-color: rgb(250, 214, 92); } .j1{ line-height: 80px; color: rgb(246, 216, 92); } .j2{ line-height: 80px; color: rgb(143,101,17); } </style> </head> <body> <div class="zong"> <img src="img/logo.png"/> <div class="rong"> <ul> <li>&emsp;&emsp;功能特权&emsp;&emsp;&emsp;</li> <li>游戏特权&emsp;&emsp;&emsp;</li> <li>生活特权&emsp;&emsp;&emsp;</li> <li>会员活动&emsp;&emsp;&emsp;</li> <li>成长体系&emsp;&emsp;&emsp;</li> <li>年费专区&emsp;&emsp;&emsp;</li> <li>超级会员&emsp;&emsp;&emsp;</li> </ul> &emsp;&emsp;&emsp;<div class="c1"><a href="#" class="j1">登录</a></div> <div class="c2"><a href="#" class="j2">开通超级会员</a></div> </div> </div> </body> </html>J2中的文字不显示
最新发布
12-16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值