尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
微信点餐系统源码部署与排错指南:从MySQL到小程序联调
简介面向计算机专业毕业生与初、中级开发者的微信点餐系统完整源码包后端基于Java与MySQL 5.7前端支持uniapp/原生小程序可在HBuilder X或微信开发者工具中运行。资源围绕菜单浏览、在线点餐、订单管理、支付处理等核心业务展开覆盖小程序端到后端数据库的完整链路适用于毕业设计、课程设计及小程序项目实战。压缩包共1285个文件大小13.84MB主要包含java后端逻辑、vue小程序页面、js交互脚本、wxml/wxss界面结构、sql数据库初始化脚本以及说明文档和部署启动脚本如1-install.bat、2-run.bat结构清晰便于按模块学习。目前已有54人学习。通过阅读源码可系统掌握Java服务端接口设计、小程序数据绑定、数据库表关系设计以及前后端联调流程同时可借鉴其目录组织与配置方式为独立开发同类点餐系统提供完整参考。1. 微信点餐系统源码先弄清这份 zip 里装了什么再决定要不要自己搭很多人拿到“微信点餐系统”毕业设计源码压缩包第一反应是解压、找 SQL 文件、导入数据库然后打开微信开发者工具跑一遍。结果往往是在第三步就卡住不是 MySQL 连不上就是小程序端请求不到后端最后对着一个黑匣子式的报错窗口干瞪眼。这套源码的价值不在于代码本身有多难而在于它是一个完整的前后端闭环——小程序端负责点餐操作后端处理订单数据MySQL 存菜品和订单记录。适合两类人一是毕业设计需要用真实业务系统交差的同学二是想学小程序全栈开发、但不想从零造轮子的开发者。在动手之前先花十分钟把这篇文章读完比盲目双击“说明文档.txt”有用得多。2. 解压后的技术结构前后端分界、四张核心表与点餐业务闭环2.1 解压后先核对这三件事再决定从哪一步开始这类毕设点餐源码的目录结构通常分为四块小程序前端、后端服务、数据库脚本、说明文档。前端目录的特征是包含app.json、pages/、utils/这类小程序工程文件后端目录的特征是包含接口路由文件、数据库连接配置、启动入口数据库脚本一般是一个.sql文件或db/文件夹说明文档可能是.txt、.doc或README.md。我一般拿到压缩包后先做三件事确认有没有 SQL 文件、确认后端启动入口在哪个文件、确认说明文档里写的运行环境版本是否和自己的本机一致。常见的情况是文档里写“MySQL 5.7 Node.js 12”但实际脚本用了 MySQL 8.0 的语法或者文档说“后端端口 8080”代码里却硬编码了 9090。这些不一致在第一次启动时会变成看似莫名其妙的报错。所以拿到源码后的第一优先级不是急着启动而是把文档里描述的环境版本和自己本机安装的版本对照一遍。前期这个核对动作能省掉后面一晚上的排错时间。目录核对还有一个容易被忽略的点你拿到的小程序端是完整工程还是分包。有些压缩包里前后端混在一个目录下有些则拆成两个独立文件夹。判断标准很简单——包含app.json的目录就是开发者工具要导入的目录导入时选错了层级工具会直接报“找不到 app.json”。这是个非常低级的错误但在毕业设计季很常见后面第 4 章会详细说。2.2 点餐系统的业务闭环答辩时把这四条线讲清楚一个点餐系统如果只做成“对菜品表做增删改查”答辩时一定会被追问“你的系统解决的是什么业务问题”。完整的点餐流程至少要覆盖四条线用户打开小程序浏览菜品分类、用户把菜品加入购物车并提交订单、后端生成订单记录并扣减库存或标记状态、商家在管理端确认接单。这四条线串起来才是“点餐系统”少了任何一环都只是一张数据库表的展示页。拿到源码后我建议先看后端接口清单而不是先看前端页面。接口清单能告诉你这个系统的业务边界有没有用户登录、有没有购物车接口、有没有订单状态变更接口。如果只有菜品列表接口那说明这套源码只是个半成品你需要自己补接口。倒过来如果接口很完整前端页面就要重点看用户的点击流程是否真的调用了这些接口——有些源码里按钮是摆设点击后没有任何网络请求这种“静态 demo”在答辩时很容易被识破。业务闭环里最容易讲出亮点的是“订单状态”的设计。用户提交订单后订单经历“待支付/待接单/制作中/已完成”这几个状态每个状态对应的数据库字段更新和前端展示是整个系统技术含量最集中的地方。后续第 6 章我会专门讲怎么把订单状态机做完整这里先建立这个概念。2.3 MySQL 四张核心表为什么订单明细必须单独成表点餐系统的数据库表通常不止四张但核心的一定是这四张用户表、菜品表、订单表、订单明细表。不同的源码命名习惯不同有的叫user、product、orders、order_item有的叫member、goods、order_info、order_detail意思都一样。先看清这四张表整个系统的数据流向就清楚了。表名作用关键字段关联关系用户表存点餐用户的 openid、昵称、手机号openid、nickname、phone订单表中的 user_id 关联到本表菜品表存菜品名称、价格、分类、图片、是否上架name、price、category_id、status订单明细中的 product_id 关联到本表订单表存一笔订单的总金额、状态、创建时间order_no、total_price、status、user_id一个用户对应多笔订单订单明细表存某笔订单里每个菜品的单价、数量order_id、product_id、price、quantity一个订单对应多条明细菜品价格会变所以订单明细里必须冗余“下单时的价格”。如果订单明细只存菜品 ID等菜品涨价后再查历史订单金额就全对不上了。这个设计细节在答辩时主动讲出来是明显的加分项——它说明你不是只会抄表结构的人。user表里用 openid 而不是自增 ID 做唯一标识是小程序项目的通行做法。openid 是微信侧生成的用户唯一标识不需要自己设计注册登录流程。如果拿到的源码里用户表没有 openid 字段而是让你存用户名密码说明这套源码可能不是为小程序定制的是普通 Web 点餐系统改的壳后续对接会有不少额外工作。3. 把 MySQL 和数据库脚本跑通导入点餐库前的三项环境检查3.1 MySQL 版本与字符集第一次装库就要锁定的两个参数导入 SQL 脚本之前我建议先把本机的 MySQL 服务跑起来并确认两个参数版本和字符集。这类毕业设计源码大多基于 MySQL 5.7 或 8.0 编写8.0 以下的老语法在 8.0 里可能报错反过来 8.0 的新特性比如窗口函数在 5.7 里又跑不了。稳妥的做法是找一个和源码说明文档一致的版本而不是装最新的。如果说明文档没写版本优先用 8.0因为 5.7 在未来几年会逐渐退出主流维护。字符集是点餐系统最容易翻车的点没有之一。MySQL 的字符集分为服务器级、数据库级、表级、连接级四层SQL 脚本里建表时可能会指定DEFAULT CHARSETutf8mb4也可能偷懒没写。如果建表时用了默认的utf8而你的连接用了utf8mb4中文菜品名和小票备注都可能出现乱码。原因在于 MySQL 的utf8是utf8mb3只支持 3 字节字符像某些生僻字和 emoji 表情会直接变成问号。点餐系统的场景里用户备注里打 emoji 的情况并不少见所以一律用utf8mb4最省心。安装 MySQL 时还需要把服务设置成开机自启否则每次重启电脑后都得手动执行启动命令。命令行检查服务状态可以用systemctl status mysqldLinux或brew services listmacOS看到服务处于 running 状态再继续下一步。这一步看起来多余但 MySQL 启动失败导致的连接错误在点餐系统的安装步骤里排前三。3.2 导入点餐数据库命令行与 Navicat 两条路径的完整命令拿到.sql脚本后导入方式有两种命令行和可视化工具。我用命令行比较多因为可以直接指定字符集避免 Navicat 导入时默认连接字符集不对导致的中文乱码。先创建一个目标数据库再导入脚本# 进入 MySQL 命令行会提示输入密码 mysql -u root -p # 在 MySQL 中创建一个名为 ordering 的数据库指定 utf8mb4 CREATE DATABASE ordering DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; # 退出 mysql 命令行回到终端 exit; # 用命令行导入 SQL 脚本路径改成你实际的 .sql 文件位置 mysql -u root -p --default-character-setutf8mb4 ordering D:/graduation/ordering.sql这段命令的逻辑是第 1 条命令登录 MySQL第 2 条命令创建一个干净的目标数据库并显式指定 utf8mb4 字符集第 3 条命令退出后第 4 条命令用--default-character-setutf8mb4指定导入时的连接字符集把 SQL 文件里的表结构和数据灌进ordering库。.sql文件里如果没有CREATE DATABASE语句就必须先手动建库如果脚本里有建库这步可以省略但显式创建的好处是你能完全控制库名和字符集不会因为脚本里的默认值不同而踩坑。导入成功后可以用SHOW TABLES;查看是否生成了表。如果表名都在再执行SELECT * FROM product LIMIT 5;抽查几条中文菜品记录确认不是乱码。直接看数据比看导入日志靠谱得多——导入日志只告诉你“语句执行成功”不会告诉你“存储进去的是不是问号”。3.3 后端连接池配置照这三处改就不会连错库数据库导完接下来要改的是后端服务的数据库连接配置。不同源码的后端语言不一样Java 用application.yml或application.propertiesNode.js 用.env或config.jsPHP 用config/database.php。但无论哪种语言连接数据库时都要给这四个参数主机地址、端口号、库名、用户名和密码。改动之前先去找这个文件——不是去启动后端而是先把连接串里的每一项和实际情况核对一遍。以常见的配置形式为例默认会是这样一段内容spring: datasource: url: jdbc:mysql://localhost:3306/ordering?useUnicodetruecharacterEncodingutf8mb4useSSLfalseserverTimezoneAsia/Shanghai username: root password: 123456 driver-class-name: com.mysql.cj.jdbc.Driver这段 YAML 配置里localhost:3306是 MySQL 服务的地址和端口如果你本机的 MySQL 没改过端口3306 一般不用动ordering必须改成你实际创建的数据库名username和password改成你安装 MySQL 时设置的账号。需要重点说明的是characterEncodingutf8mb4和useSSLfalse这两项——前者保证 Java 后端读出来的菜品中文不乱码后者避免 MySQL 8.0 默认开启 SSL 后连接时报错。如果你拿到的是 Node.js 后端配置池参数名略有不同但host、port、database、user、password五个键是通用的。还有一个改动后必须养成的习惯只要改了数据库连接配置就要重启后端服务。Java 的 Spring Boot 项目改了application.yml后不重启新配置不会生效——这不是玄学是框架的加载机制决定的。Node.js 的.env文件同理改完不重启进程process.env里读到的还是旧值。4. 跑通小程序端从开发者工具导入到真机预览的设置全流程4.1 微信开发者工具导入前端工程AppID 先选测试号数据库和后端配置搞定后开始处理小程序端。打开微信开发者工具点击“导入项目”目录必须选到包含app.json的那一层。常见错误是把整个压缩包解压目录都选进去开发者工具会提示找不到app.json。判断方法很简单在文件管理器里往下翻一级目录看到app.json、app.js、app.wxss三个文件在同一层级那这个目录才是小程序前端根目录。AppID 的选择分两种情况只用模拟器调试选“测试号”就行要在真机上预览必须用自己的 AppID。测试号的好处是不需要注册小程序账号打开开发者工具就能跑坏处是部分需要真实微信环境的接口比如登录时获取 openid在测试号下可能调不通。真机预览时用自己的 AppID需要在小程序后台把后端接口域名加入“request 合法域名”这个配置步骤卡住了很多人——如果你只是本地联调不涉及线上发布开发者工具里勾选“不校验合法域名”就能绕过去。导入成功后第一件事不是点“编译”而是先看app.js或首页onLoad里有没有向后端发请求。如果有先确认后端服务已经启动了否则一进首页就报网络错误很容易让人误判成源码有问题。4.2 小程序端请求地址 config.js一处改动决定本地联调能不能通小程序前端请求后端接口必须知道后端的访问地址。这部分代码一般集中在utils/config.js或utils/request.js里写法类似这样// utils/config.js — 前后端联调的关键配置文件 module.exports { // baseUrl 是后端接口的统一前缀每个请求都会拼这个地址 // 开发者工具模拟器里可以填 http://127.0.0.1:8080 // 真机预览时必须改成电脑的局域网 IP不能再用 localhost baseUrl: http://127.0.0.1:8080 }这份配置的逻辑是小程序里所有网络请求都基于baseUrl拼完整地址URL 开头常常是wx.request({ url: config.baseUrl /api/order/add })。后端常用的端口是 8080具体端口以你后端服务启动时实际打印的为准——很多源码是硬编码的如果和你本机冲突用后端配置修改端口。模拟器调试时127.0.0.1能通真机预览时手机访问127.0.0.1指向的是手机自己而不是电脑所以必须改成电脑在局域网内的 IP。获取电脑 IP 的方法是Windows 用ipconfigmacOS 用ifconfig | grep inet找到192.168.x.x或10.x.x.x这样的地址填进去。你可以在电脑浏览器里直接访问http://192.168.x.x:8080测试后端是否对这个 IP 开放了监听——如果浏览器能打开接口文档或提示“无法访问该网页”说明手机大概率也连不通。4.3 开发者工具里的两个开关不校验合法域名与调试模式把baseUrl改成局域网 IP 后在开发者工具里编译运行如果控制台报url not in domain list说明合法域名校验没关。微信开发者工具的“详情 - 本地设置”里有一个“不校验合法域名、web-view业务域名、TLS 版本以及 HTTPS 证书”的复选框本地联调时务必勾上。原因是微信要求线上小程序只能用 HTTPS 和备案域名但本地开发时接口往往是http://192.168.x.x不勾这个选项所有请求都会被拦截。另一个开关是调试模式的开启在工具右上角“预览”生成二维码时勾选“启用调试模式”。开启后真机上看到的请求日志会更完整而且可以跳过一些线上限制。这两个开关是本地跑通的关键组合缺一个都会让小程序一直转圈或白屏。还需要注意手机和电脑必须在同一个局域网里。如果手机用 4G/5G 流量、电脑连着家里的路由器IP 能 ping 通才算见鬼了。真机预览前先在手机的浏览器里访问http://192.168.x.x:8080验证连通性这一步能排除 80% 的“真机请求失败”问题。4.4 点餐主流程验证下单后去数据库里查订单跑通联调后不要只点几个菜单看看页面就结束。至少要完整走一遍“点菜 → 加购物车 → 提交订单”的流程然后去 MySQL 数据库里验证订单真的落库了。用如下 SQL 就能看到最近产生的订单和明细-- 在 MySQL 中执行查看最近的订单列表 SELECT id, order_no, user_id, total_price, status, create_time FROM orders ORDER BY create_time DESC LIMIT 5; -- 查看最新一笔订单的明细确认菜品关联正确 SELECT oi.product_id, oi.quantity, oi.price, p.name AS product_name FROM order_item oi JOIN product p ON oi.product_id p.id WHERE oi.order_id ( SELECT MAX(id) FROM orders );这段 SQL 的验证逻辑是先用第一句查最近产生的订单看状态字段是否已经入库再用第二句关联菜品表确认订单明细里冗余的价格和菜品名称对得上。如果订单出来了但明细为空问题通常出在前端提交订单时没有调用“新增订单明细”的接口这是此类源码里很常见的 bug。走到这一步说明本地开发环境已经完整跑通。此时建议给数据库做一次备份——后面改代码时改坏数据是常有的事备份就是用最小的成本买一份后悔药。5. 点餐系统排错实战5 个让新手卡上一下午的常见坑5.1 error 2002MySQL 服务根本没启动却以为密码输错了现象执行mysql -u root -p或后端启动时报ERROR 2002 (HY000): Cant connect to local MySQL server through socket /tmp/mysql.sock (2)。原因这个报错几乎和密码无关是 MySQL 服务进程没有在运行。socket 文件mysql.sock是由 MySQL 服务启动时生成的服务没起来这个文件就不存在客户端自然连不上。新手最容易在这时候反复重装 MySQL浪费时间。解决先启动服务再连。macOS 上执行brew services start mysqlLinux 上执行systemctl start mysqld或service mysql startWindows 上在“服务”管理器中找到 MySQL 并启动。启动后确认进程存在再重新执行连接命令。如果启动失败才去查安装目录下的错误日志mysql.log或/var/log/mysqld.log。5.2 小程序请求一直转圈控制台报 url not in domain list现象开发者工具里小程序页面能打开但点击“提交订单”后按钮一直 loading控制台报url not in domain list。原因这是微信的合法域名校验在拦截非 HTTPS 请求。本地联调时后端地址是http://192.168.x.x:8080既不是 HTTPS 也没有备案域名微信默认不允许wx.request发送这种请求。解决在开发者工具的“详情 - 本地设置”里勾选“不校验合法域名……”。如果已经勾了还报错把baseUrl从localhost改成局域网 IP——localhost在模拟器里偶尔能通但真机预览时手机访问localhost指向的是手机自己。换 IP 后重编译问题消失。这两个动作是本地联调的黄金组合缺一不可。5.3 菜品图片全部裂开本地路径与线上的两重坑现象小程序里其他内容显示正常唯独菜单里的菜品图片全是裂的或者一片空白。打开控制台看到图片请求返回 404。原因这类源码的菜品图片通常有两种存法——数据库字段存图片 URL或者图片文件放在小程序images/目录下。前者的坑是 URL 是作者在开发环境用的内网地址换到你的机器自然 404后者的坑是前端代码里写的是绝对路径/images/food/1.jpg但小程序本地资源必须用相对路径或打包后访问wxfile://打头的本地临时路径。解决图片量小的话直接把图片文件放进小程序的images/目录菜品表的图片字段改成相对路径比如/images/food/1.jpg。图片量大的话把图片上传到任意对象存储并把这个服务的域名加到“downloadFile 合法域名”里。不推荐把图片写进数据库 base64 字段——虽然能显示但会让数据库体积膨胀查询变慢。5.4 MySQL 8.0 密码加密规则导致后端连不上报 Access denied现象MySQL 命令行能登录但后端服务启动时报Access denied for user rootlocalhost (using password: YES)数据库名、账号、密码都核对过没错。原因MySQL 8.0 默认的密码加密插件是caching_sha2_password而一些旧版本连接驱动和常见源码里的 Java 驱动默认使用mysql_native_password协议。两边对不上后端就被拒绝了。解决在 MySQL 里执行如下 SQL把连接账号的加密方式改回兼容模式ALTER USER rootlocalhost IDENTIFIED WITH mysql_native_password BY 你的密码; FLUSH PRIVILEGES;改完后重启后端服务。如果用的是别的专门账号把rootlocalhost换成你实际的账号。注意FLUSH PRIVILEGES是让权限改动立即生效不要漏掉。另外这个改动只影响密码校验方式不会动到数据表里的任何业务数据。5.5 中文全部乱码导入用错字符集整个菜单都是问号现象数据库表都建好了但查出来的菜品名称显示成???或一会儿正常一会儿乱码。原因SQL 脚本导入时连接字符集和表字符集不一致。如果建表语句没显式指定DEFAULT CHARSETutf8mb4而 MySQL 默认是latin1或旧版utf8中文就会被截断成问号。另一处是导入时没有加--default-character-setutf8mb4导致数据在进入表之前就已经编码错误。解决已经导进去的乱码数据没法“修复”只能重建库重新导入。正确的做法是先删掉旧库然后按 3.2 节的命令显式创建utf8mb4数据库、显式用--default-character-setutf8mb4导入。导入后抽查记录看到中文正常再连接后端。乱码问题最好在导入后立刻发现否则等你把所有菜单图片都配好才发现返工成本就高了。6. 从“能跑”到“能答辩”三个值得往上加的功能方向把本地跑通只是起点。答辩时老师更关心你在这套系统上做了什么“自己的东西”。这里推荐三个性价比高的改进方向微信支付对接、订单状态机、多端适配。微信支付对接是一次很好的技术展示。流程是小程序端调用wx.requestPayment发起支付后端生成预支付单并接收支付结果回调回调里更新订单状态为“已支付”。重点难点在于后端回调接口必须正确处理微信服务器发来的签名验证防止伪造回调。这个功能做下来讲清楚“支付回调幂等处理”这个点就能证明你有真实业务系统的设计思维。订单状态机是目前源码里大概率做得薄弱的部分。很多模板只有一个“未支付 / 已支付”字段你可以把它扩展成五个状态状态含义触发操作PENDING待支付下单成功但未付款用户提交订单PAID已支付待商家接单支付回调成功CONFIRMED已接单制作中商家确认接单DELIVERING配送中商家点击开始配送COMPLETED已完成用户确认收货或超时自动完成每个状态变更都记录变更时间前端页面根据状态展示不同操作按钮。这个改动涉及数据表和前后端多处但能完整展示你对业务流转的理解是答辩时最值得花时间做的部分。第三个方向是考虑基于现有业务逻辑做多端适配的改造比如把小程序端用 uni-app 重写同一套代码同时编译到微信小程序端、H5 端和 Android 端。这更适合动手能力强的同学既能保住原有后端和数据库逻辑又能展示跨端能力。改造时注意小程序特有的接口如wx.login要封装成平台判断uni-app 里也有对应的uni.login方案。做完这些改进后记得重新走一遍完整的点餐流程确认改动没有破坏原有功能。我自己在这类项目上吃过最大的亏就是为了加支付回调功能顺手改了订单表结构结果忘了清理测试数据答辩时演示下单页面里出现了十几条调试订单场面一度很尴尬。先备份旧库、再动手加功能这条习惯让我在后面几个项目里少踩了很多坑。希望帮到你。本文还有配套的精品资源点击获取
RELATED

相关推荐

DRV8818PWPR+PIC18F47J53:工业级步进电机控制方案全解析

DRV8818PWPR+PIC18F47J53:工业级步进电机控制方案全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/11/1 1:05:41
DRV8818PWPR+PIC18F45K80双极步进电机控制方案实战

DRV8818PWPR+PIC18F45K80双极步进电机控制方案实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/11/1 1:05:41
基于DRV8818与STM32的双极步进电机驱动方案实战解析

基于DRV8818与STM32的双极步进电机驱动方案实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/11/1 1:05:41
MORE NEWS

更多资讯

📰

启动报Port 8088 was already in use?先查是谁占的

启动报Port 8088 was already in use?先查是谁占的 项目启动报 Port 8088 was already in use,意思很直白:这个端口已经有人占了。 先说原理:端口是"门牌号",一间房只住一个进程 端口就是一台机器上的门牌号…

📰

担心文档上云?本地运行的办公AI才敢放心用

单位上周开了个会,主题是"AI 提效",散会时领导补了一句:涉及客户资料的文档,不许往云端传。这话一出,会议室里本来跃跃欲试的同事全蔫了——大家平时用的那些在线 AI,文档一上传就不知道存哪儿去…

📰

先能用,再好用:从烂尾复盘到两周上线,全栈项目的‘原型—快速迭代‘方法论

先能用,再好用:从烂尾复盘到两周上线,全栈项目的“原型—快速迭代”方法论 全栈学习路径的文章已经很多了:怎么选技术栈、怎么搭环境、怎么记文档,几乎每个方向都有人写。但一个更扎心的问题很少有人正面讨论——为什…

📰

深度思考模式把 ARC-AGI-2 从 17.6% 拉到 45.1%:对照 Gemini 3 Pro 的三份能力评测,看‘会思考‘改写了哪些边界

深度思考模式把 ARC-AGI-2 从 17.6% 拉到 45.1%:对照 Gemini 3 Pro 的三份能力评测,看“会思考”改写了哪些边界 一、先说结论:变强的不是“知识”,而是“解法” 每次新模型发布,评测榜单都会涨几个点,大…

📰

1.c++入门篇

1.c中的关键字asmdoifreturntrycontinueautodoubleinlineshorttypedefforbooldynamic_castintsignedtypeidpublicbreakelselongsizeoftypenamethrowcaseenummutablestaticunionwchar_tcatchexplicitnamespacestatic_castunsigneddefaultcharexportnewstructusingfriendclassext…

📰

《江灯合声》:有可行的分框版,也仍可以选择连续鸣谢

武汉江岸区栎坡合唱团在免费节目册《江灯合声》中,以表格集中鸣谢资助者。各家共同要求改为独立小框,团里仍想保留表格。现有全名与支持事项清楚可见,双方此前未承诺具体排版。我支持保留表格。补充的试排材料让选择更具体:分框能…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬