支付模块

实际开发工作中经常会遇见如下场景,一个支付模块,一个订单模块,有一定依赖,一个同事负责支付模块,另一个同事负责订单模块,但是开发支付模块的时候要依赖订单模块的相关类 ,方法,或者工具类,这些还没开发出来,看不到一个完整的订单业务逻辑,可能只拿到了订单的Order类,但是呢不能影响我们后端的并行开发,就像前端和后端之间的并行开发,后端之间也有并行开发,后端的项目有时候是非常大的,这个时候该怎么办,本章支付模块和下节订单模块就要模拟这种场景,提高自己的胜任跨业务开发的抽象开发能力,这种能力再开发大型项目的时候非常重要,而且是衡量一个优秀开发者非常重要的标准,比如在面试的时候经常会问到这样问题来此判断这个面试者是否有开发大型项目的经验或者潜力,与此同时,还有一个重要目的,为了考虑后面的进阶课程,会把项目演进到拆分微服务和进行dubbo服务化的时候,我们只能拿到一个接口和一个类,什么都看不到,具体的实现都在远程的rpc服务端,这种场景的开发正是需要跨业务的一定抽象开发能力

数据库表设计

支付信息表

CREATE TABLE‘ mmall_ pay_ info’ (
'id' int(11) NOT NULL AUTO_ INCREMENT,
'user_ id' int(11) DEFAULT NULL COMMENT . 用户id',
'order_ no' bigint(20) DEFAULT NULL COMMENT '订单号'
'pay_ platform' int(10) DEFAULT NULL COMMENT ' 支付平台:1-支付宝,2-微信',
'platform_ number' varchar (200) DEFAULT NULL COMMENT ' 支付宝支付流水号' ,
'platform_ _status' varchar(20) DEFAULT NULL COMMENT ' 支付宝支付状态' ,
'create_ time' datetime DEFAULT NULL COMMENT ' 创建时间,
'update_ time' datetime DEFAULT NULL COMMENT ' 更新时间',
PRIMARY KEY ( id')
) ENGINE= InnoDB AUTO_ INCREMENT=53 DEFAULT CHARSET=utf8

功能

  • 支付宝对接

  • 支付回调

  • 查询支付状态

支付宝对接对接流程

1、首先得有一个支付宝账号,(注册蚂蚁金服开发平台账号)

2、创建应用,因为我们是自己开发或者公司开发,所以要创建自研型应用(自研型应用分为网页移动应用,AR,生活号,小程序),创建应用得过程中:

a) 需要一个用户名和一个logo(应用图标,因为我是自己学习,可以在线网站免费设计一个),填写完毕之后确认创建,之后就可以在应用列表中看到创建得应用,一般情况下会进入下一个页面填写应用的更多详细信息

b) 进入下面页面

c) 关于应用网关和授权回调地址,单纯的支付接口是不需要配置这两个信息的,简单来说就是:应用网关是用于接收口碑或是生活号的信息的,授权回调地址是第三方授权或是用户信息授权使用的,如果用不到是可以不配置的!

d) 下面就静等审核(说是一个工作日)

涉及知识点

  • 熟悉支付宝对接核心文档,调通支付宝支付功能官方Demo
  • 解析支付宝SDK对接源码
  • RSA1和RSA2验证签名及加解密
  • 避免支付宝重复通知和数据校验
  • natapp外网穿透和tomcat remote debug
  • 生成二维码,并持久化到图片服务器

接口设计

【前台】

1.支付

/order/pay.do

http://localhost:8080/order/pay.do?orderNo=1485158676346

request

orderNo

response

success

{"status": 0,"data": {"orderNo": "1485158676346","qrPath": "http://img.happymmall.com/qr-1492329044075.png"}
}

2.查询订单支付状态

/order/queryorderpay_status.do

http://localhost:8080/order/queryorderpay_status.do?orderNo=1485158676346

request

orderNo

response

success

{"status": 0,"data": true
}

3.支付宝回调

参考支付宝回调文档:https://support.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.mFogPC&treeId=193&articleId=103296&docType=1

/order/alipay_callback.do

request

HttpServletRequest

response

success

success

订单模块

数据库表设计

订单表

CREATE TABLE mmall_ order’(
'id' int(11) NOT NULL AUTO_ INCREMENT COMMENT '订单id',
'order_ no'   bigint(20) DEFAULT NULL COMMENT '订单号',
'user_ id'  int(11) DEFAULT NULL COMMENT '用户id' ,
'shipping_ id' int(11) DEFAULT NULL,
'payment' decimal(20,2) DEFAULT NULL COMMENT ' 实际付款金额,单位是元,保留两位小数',
'payment_ type'  int(4) DEFAULT NULL COMMENT ' 支付类型,1-在线支付' ,
'postage'  int(10) DEFAULT NULL COMMENT ' 运费,单位是元',
'status' int(10) DEFAULT NULL COMMENT '订单状态:0-已取消-10- 未付款,20-已付款, 40-已发货,50- 交易成功,60- 交易关闭",
'payment_time' datetime DEFAULT NULL COMMENT ' 支付时间',
'send_ time' datetime DEFAULT NULL COMMENT ' 发货时间,
'end. time' datetime DEFAULT NULL COMHENT ‘交易 完成时间',
'close_ time' datetine DEFAULT NULL COMMENT ‘交 易关闭时间',
'create_ _time' datetime DEFAULT NULL COMMENT ' 创建时间",
'update_ time' datetime DEFAULT NULL COMMENT ' 更新时间' ,
PRIHARY KEY ( id'),
UNIQUE KEY“ order_ _no_ index" (order_ no') USING BTREE
) ENGINE-InnoDB AUTO INCREMENT-103 DEFAULT CHARSET=utf8

订单明细表

CREATE TABLE: mmall_ order_ item’(
'id' int(11) NOT NULL AUTO_ ,INCREMENT COMMENT '订单子表id' ,
'user_ id'  int(11) DEFAULT NULL,
'order_ no' bigint(20) DEFAULT NULL,
'product_ id' int(11) DEFAULT NULL COMNENT .商晶id',
'product_ name' varchar(100) DEFAULT NULL COMMENT ' 商品名称',
'product_ image' varchar(500) DEFAULT NULL COMNENT ' 商品图片地址,
'current _unit_ price' decimal(20,2) DEFAULT NULL COMNENT '生成订单时的商品单价,单位是元,保留两位小数' , .
'quantity' int(10) DEFAULT NULL COMMENT 商品数量
'total_ price' decimal(20,2) DEFAULT NULL COMMENT "商品总价,单位是元,保留两位小数' ,
'create_ time' datetime DEFAULT NULL,
'update_ time' datetime DEFAULT NULL,
PRIMARY KEY ( id'),
KEY 'order_ no_ index'  ('order. no' ) USING BTREE,
KEY 'order_ no_user_ id_ index' ('user_ _id' ,'order_ no') USING BTREE
) ENGINE: =InnoDB AUTO_ INCREMENT-113 DEFAULT CHARSET=utf8

功能

前台功能

创建订单商品信息订单列表订单详情取消订单

后台功能

订单列表订单搜索订单详情订单发货

涉及知识点

  • 避免业务逻辑中横向越权和纵向越权等安全漏洞
  • 设计实用、安全、扩展性强大的常量、枚举类
  • 订单号生成规则、订单严谨性判断
  • POJO和VO之间的实际操练
  • mybatis批量插入

接口设计

【前台】

1.创建订单

/order/create.do

引用已存在的收货地址idhttp://localhost:8080/order/create.do?shippingId=5

request

shippingId

response

success

{"status": 0,"data": {"orderNo": 1485158223095,"payment": 2999.11,"paymentType": 1,"postage": 0,"status": 10,"paymentTime": null,"sendTime": null,"endTime": null,"closeTime": null,"createTime": 1485158223095,"orderItemVoList": [{"orderNo": 1485158223095,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": null}],"shippingId": 5,"shippingVo": null}
}

2.获取订单的商品信息

/order/getordercart_product.do

http://localhost:8080/order/getordercart_product.do

request

response

success

{"status": 0,"data": {"orderItemVoList": [{"orderNo": null,"productId": 1,"productName": "iphone7","productImage": "mmall/aa.jpg","currentUnitPrice": 7999,"quantity": 10,"totalPrice": 79990,"createTime": ""}],"imageHost": "http://img.happymmall.com/","productTotalPrice": 79990}
}

3.订单List

http://localhost:8080/order/list.do?pageSize=3

/order/list.do

request

pageSize(default=10)
pageNum(default=1)

response

success

{"status": 0,"data": {"pageNum": 1,"pageSize": 3,"size": 3,"orderBy": null,"startRow": 1,"endRow": 3,"total": 16,"pages": 6,"list": [{"orderNo": 1485158676346,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:36","orderItemVoList": [{"orderNo": 1485158676346,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:36"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"receiverName": "geely","shippingVo": null},{"orderNo": 1485158675516,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:35","orderItemVoList": [{"orderNo": 1485158675516,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:35"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"receiverName": "geely","shippingVo": null},{"orderNo": 1485158675316,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:35","orderItemVoList": [{"orderNo": 1485158675316,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:35"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"receiverName": "geely","shippingVo": null}],"firstPage": 1,"prePage": 0,"nextPage": 2,"lastPage": 6,"isFirstPage": true,"isLastPage": false,"hasPreviousPage": false,"hasNextPage": true,"navigatePages": 8,"navigatepageNums": [1,2,3,4,5,6]}
}

4.订单详情detail

http://localhost:8080/order/detail.do?orderNo=1480515829406

/order/detail.do

request

orderNo

response

success

{"status": 0,"data": {"orderNo": 1480515829406,"payment": 30000.00,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "","sendTime": "","endTime": "","closeTime": "","createTime": "2016-11-30 22:23:49","orderItemVoList": [{"orderNo": 1480515829406,"productId": 1,"productName": "iphone7","productImage": "mainimage.jpg","currentUnitPrice": 10000.00,"quantity": 1,"totalPrice": 10000.00,"createTime": "2016-11-30 22:23:49"},{"orderNo": 1480515829406,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 20000.00,"quantity": 1,"totalPrice": 20000.00,"createTime": "2016-11-30 22:23:49"}],"imageHost": "http://img.happymmall.com/","shippingId": 3,"receiverName": "geely","shippingVo": {"receiverName": "geely","receiverPhone": "0100","receiverMobile": "186","receiverProvince": "北京","receiverCity": "北京","receiverDistrict": "昌平区","receiverAddress": "矩阵小区","receiverZip": "100000"}}
}

5.取消订单

http://localhost:8080/order/cancel.do?orderNo=1480515829406

/order/cancel.do

request

orderNo

response

success

{"status": 0
}

【后台】

1.订单List

http://localhost:8080/manage/order/list.do?pageSize=3

/manage/order/list.do

request

pageSize(default=10)
pageNum(default=1)

response

success

{"status": 0,"data": {"pageNum": 1,"pageSize": 3,"size": 3,"orderBy": null,"startRow": 1,"endRow": 3,"total": 16,"pages": 6,"list": [{"orderNo": 1485158676346,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:36","orderItemVoList": [{"orderNo": 1485158676346,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:36"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"shippingVo": null},{"orderNo": 1485158675516,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:35","orderItemVoList": [{"orderNo": 1485158675516,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:35"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"receiverName": "geely","shippingVo": null},{"orderNo": 1485158675316,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:35","orderItemVoList": [{"orderNo": 1485158675316,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:35"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"receiverName": "geely","shippingVo": null}],"firstPage": 1,"prePage": 0,"nextPage": 2,"lastPage": 6,"isFirstPage": true,"isLastPage": false,"hasPreviousPage": false,"hasNextPage": true,"navigatePages": 8,"navigatepageNums": [1,2,3,4,5,6]}
}

2.按订单号查询

http://localhost:8080/manage/order/search.do?orderNo=1480515829406

/manage/order/search.do

request

orderNo

response

success

{"status": 0,"data": {"pageNum": 1,"pageSize": 3,"size": 3,"orderBy": null,"startRow": 1,"endRow": 3,"total": 16,"pages": 6,"list": [{"orderNo": 1485158676346,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:36","orderItemVoList": [{"orderNo": 1485158676346,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:36"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"shippingVo": null},{"orderNo": 1485158675516,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:35","orderItemVoList": [{"orderNo": 1485158675516,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:35"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"receiverName": "geely","shippingVo": null},{"orderNo": 1485158675316,"payment": 2999.11,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "2017-02-11 12:27:18","sendTime": "2017-02-11 12:27:18","endTime": "2017-02-11 12:27:18","closeTime": "2017-02-11 12:27:18","createTime": "2017-01-23 16:04:35","orderItemVoList": [{"orderNo": 1485158675316,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 2999.11,"quantity": 1,"totalPrice": 2999.11,"createTime": "2017-01-23 16:04:35"}],"imageHost": "http://img.happymmall.com/","shippingId": 5,"receiverName": "geely","shippingVo": null}],"firstPage": 1,"prePage": 0,"nextPage": 2,"lastPage": 6,"isFirstPage": true,"isLastPage": false,"hasPreviousPage": false,"hasNextPage": true,"navigatePages": 8,"navigatepageNums": [1,2,3,4,5,6]}
}

3.订单详情

http://localhost:8080/manage/order/detail.do?orderNo=1480515829406

/manage/order/detail.do

request

orderNo

response

success

{"status": 0,"data": {"orderNo": 1480515829406,"payment": 30000.00,"paymentType": 1,"paymentTypeDesc": "在线支付","postage": 0,"status": 10,"statusDesc": "未支付","paymentTime": "","sendTime": "","endTime": "","closeTime": "","createTime": "2016-11-30 22:23:49","orderItemVoList": [{"orderNo": 1480515829406,"productId": 1,"productName": "iphone7","productImage": "mainimage.jpg","currentUnitPrice": 10000.00,"quantity": 1,"totalPrice": 10000.00,"createTime": "2016-11-30 22:23:49"},{"orderNo": 1480515829406,"productId": 2,"productName": "oppo R8","productImage": "mainimage.jpg","currentUnitPrice": 20000.00,"quantity": 1,"totalPrice": 20000.00,"createTime": "2016-11-30 22:23:49"}],"imageHost": "http://img.happymmall.com/","shippingId": 3,"receiverName": "geely","shippingVo": {"receiverName": "geely","receiverPhone": "0100","receiverMobile": "186","receiverProvince": "北京","receiverCity": "北京","receiverDistrict": "昌平区","receiverAddress": "矩阵小区","receiverZip": "100000"}}
}

4.订单发货

http://localhost:8080/manage/order/send_goods.do?orderNo=1480515829406

/manage/order/send_goods.do

request

orderNo

response

success

{"status": 0,"data": "发货成功"
}

【笔记6-支付及订单模块】从0开始 独立完成企业级Java电商网站开发(服务端)相关推荐

  1. java批量生成订单号_【笔记6-支付及订单模块】从0开始 独立完成企业级Java电商网站开发(服务端)...

    支付模块 实际开发工作中经常会遇见如下场景,一个支付模块,一个订单模块,有一定依赖,一个同事负责支付模块,另一个同事负责订单模块,但是开发支付模块的时候要依赖订单模块的相关类 ,方法,或者工具类,这些 ...

  2. 【笔记2-环境配置及初始化】从0开始 独立完成企业级Java电商网站开发(服务端)

    准备工作 Linux系统安装 云服务器部署 概要 申请和配置 域名的购买.解析.配置.绑定流程 用户创建实操 环境安装及部署 JDK.Tomcat.Maven下载安装及配置 vsftpd下载安装及配置 ...

  3. 从0开始 独立完成企业级Java电商网站开发(服务端)

    数据表结构设计 关系设计 为什么不用外键? 分库分表有外键会非常麻烦,清洗数据也很麻烦.数据库内置触发器也不适合采用. 查业务问题的后悔药--时间戳更多Java学习教程+薇老师:hua2021ei c ...

  4. python3菜鸟教程电商网站开发_python3菜鸟教程笔记

    python2和python3 的一些差异: * print函数变了,python3中的print函数必须要加括号 * xrange函数合并到了range中,2到5的序列可以直接用range(2, 5 ...

  5. java 电商 插件 开发_JAVA项目实战开发电商项目案例(六与七)商品分类与商品模块管理开发...

    购物网站中,商品管理板块也是重要的一个版块,下面我会从后台管理系统和前台管理页面去讲述购物网站商品模块功能的开发. 1演示效果 1.1前台演示地址演示地址 1.2后台演示地址演示地址 2商品分类功能 ...

  6. 订单支付和评论——基于Django框架的天天生鲜电商网站项目系列博客(十五)

    系列文章目录 需求分析--基于Django框架的天天生鲜电商网站项目系列博客(一) 网站框架搭建--基于Django框架的天天生鲜电商网站项目系列博客(二) 用户注册模块--基于Django框架的天天 ...

  7. web电商、商城pc端、商城、购物车、订单、线上支付、web商城、pc商城、登录注册、人工客服、收货地址、现金券、优惠券、礼品卡、团购订单、评价晒单、消息通知、电子产品商城、手机商城、电脑商城

    web电商.商城pc端.商城.购物车.订单.线上支付.web商城.pc商城.登录注册.人工客服.收货地址.现金券.优惠券.礼品卡.团购订单.评价晒单.消息通知.电子产品商城.手机商城.电脑商城 Axu ...

  8. Java电商平台-电商订单系统全解析

    说明:Java电商平台-电商订单系统全解析主要讲解OMS的内容,设计,开发,架构等知识 今天分享将会分为以下三个环节来阐述: 1.订单系统的介绍 2.订单系统的解构 3.垂直电商订单系统设计思路 一. ...

  9. 广告电商系统开发功能只订单处理

    广告电商系统之订单处理模块 订单处理功能块:订单下单:订单组合付款:订单列表,订单状态,订单物流信息,订单确认,订单售后,订单评论  1.订单下单 通过购物车的筛选,确定出下单的产品,系统自动计算出订 ...

最新文章

  1. inrange函数 python_为什么OpenCV的inRange函数不将我的HSV图像转换成二进制?
  2. 一位非常要好的朋友,零基础转行 Python!
  3. (Z)托尼?施瓦茨:六大关键几乎可以改变一切
  4. Android之运行PopupWindow提示Unable to add window -- token null is not valid; is your activity running?
  5. React开发(183):ant design 中treeSelect控制选中
  6. UI_布局_总体思路
  7. diff算法_[VUE学习]徒手撸一个虚拟dom+diff算法
  8. 用户界面草图设计工具-工具包和资源
  9. Java 8 新特性:3-函数(Function)接口
  10. 【AI】行为树(Behaviour Tree)
  11. Mach Operating System
  12. 微信小程序实现简单的点击切换功能(微信开发者工具)
  13. Axure RP 8.1.6授权码
  14. 利用UltraISO刻录光盘启动盘
  15. 英汉对照名言隽语(三)
  16. 无损音频压缩——APE和FLAC比较
  17. 财务软件做账的基本流程
  18. selenium 模拟登录 突破图片验证码(豆瓣网)
  19. (转)CSS 基本知识
  20. Node.js模块化机制原理探究

热门文章

  1. PCL中的PointT类型
  2. 小绮的踩坑日记|小土堆pytorch视频20220330-神经网络
  3. 李彦宏妻子马东敏向中科大捐赠一亿,成立“蔷薇科大发展基金”
  4. 青少年弱势群体精神虐待现象探析-吕卫华
  5. Creo4.0手动添加第三方零件库
  6. 《方块方舟》自定义服务器工具,方舟方块世界怎么自建服务器 自建服务器方法内容详解-游侠网...
  7. 高通9xxx系列4G模块modem linux编译环境安装及配置详细说明
  8. pptv手机端html,2K超高清裸眼3D,PPTV手机即将开启新体验
  9. 2023 年值得推荐的 Vue 库
  10. Encoder-Decoder自动生成对联,要试试么?