
航空订单课程配套教材-全栈工程师的自我修养
第一周:地基篇 —— 架构思维与数据灵魂 【本周目标】:不写一行垃圾代码,理解“状态机”与“ORM”的真正含义。1. 核心概念背诵(面试必考) MVC架构 (MVC Architecture): 我们不把所有代码写在一个文件里。 Model (实体层): 也就是 User, Order。它们是数据的载体,对应数据...
第一周:地基篇 —— 架构思维与数据灵魂
【本周目标】:不写一行垃圾代码,理解“状态机”与“ORM”的真正含义。
1. 核心概念背诵(面试必考)
MVC架构 (MVC Architecture):
我们不把所有代码写在一个文件里。
Model (实体层): 也就是 User, Order。它们是数据的载体,对应数据库的表。
Repository (数据访问层): 负责跟数据库说话(CRUD)。我们用 JPA,是为了不写繁琐的 SQL。
Service (业务逻辑层): 这里是“大脑”。计算价格、判断能不能退票,都在这里。
Controller (接口层): 也就是“柜台”。负责接待前端的请求。
JPA与ORM (Object-Relational Mapping):
解释: 数据库懂 SQL,Java 懂对象。ORM 就是翻译官,把 Java 的 Order 对象自动变成数据库里的 INSERT 语句。
状态机 (State Machine):
为什么不用 if-else? 订单状态流转是很复杂的(待支付 -> 已支付 -> 已出票 -> 已取消)。
如果用 if,代码会变成面条。用状态机(或枚举控制),能确保“已取消”的订单绝对不能变成“已支付”。这叫“业务健壮性”。
2. 必须掌握的日语术语 (针对日企)
DB設計 (DB Sekkei): 数据库设计。
主キー (Shu-ki) / 外部キー (Gaibu-ki): 主键 / 外键。
排他制御 (Haita Seigyo): 这一点在订单系统极重要。虽然本周只讲基础,但要记住这个词,意思是防止两个人买同一张票。
3. 课后复盘自问
“我为什么要画 ER 图?直接写代码不行吗?”
答: ER 图是地基。如果表结构设计错了(比如用户和订单没有关联外键),后面的代码写得再好也是危楼。
第二周:规则篇 —— API 契约与守门人
【本周目标】:懂得如何设计“别人愿意用”的接口,并像保镖一样守护系统。
1. 核心概念背诵
RESTful API:
不仅仅是 URL。它是一种风格。
GET 查,POST 增,PUT 改,DELETE 删。
面试话术: “我的接口设计遵循 RESTful 规范,使用标准的 HTTP 状态码(200, 404, 500),保证前后端协作的效率。”
JWT (JSON Web Token):
以前的做法: 服务器记在 Session 里(就像餐厅前台有个大本子记会员)。
现在的做法 (JWT): 给用户发一张加密的“手环”。服务器不用查本子,只看手环是不是真的。
好处: 无状态 (Stateless),这对服务器扩展非常重要(Docker 部署的前提)。
依赖注入 (Dependency Injection / IoC):
Spring 的核心。不需要我 new OrderService(),Spring 容器会自动帮我把 Service 送到 Controller 里。
2. 必须掌握的日语术语
認証 (Ninsho): 认证(你是谁?Login)。
認可 (Ninka): 授权(你能干什么?Admin/User)。
トークン (Token): 令牌(这里指 JWT)。
脆弱性 (Zeijakusei): 漏洞。我们用 Spring Security 就是为了防止脆弱性。
3. 课后复盘自问
“为什么 Swagger (OpenAPI) 这么重要?”
答: 在日本开发中,文档 (Document) 就是生命。Swagger 能够自动生成文档,减少了前后端扯皮的时间,这就是“工数削減 (Kosū Sakugen)”。
第三周:交互篇 —— 组件化与用户体验
【本周目标】:从“后台黑箱”走向“前台门面”,理解现代前端的思维方式。
(注:课程大纲中提及 Angular 语法,但此处以 React 为主进行通用描述,因为 React 市场更广,逻辑共通)
1. 核心概念背诵
组件化 (Component-Based):
不要把一个网页写成几千行的 HTML。
把页面拆成:Header, Sidebar, OrderList, OrderItem。就像乐高积木一样拼装。
单页应用 (SPA - Single Page Application):
以前换页面要白屏刷新。现在 React/Angular 只是偷偷替换了 DOM 里的内容,体验像原生 App 一样丝滑。
异步通信与 Promise:
前端找后端要数据(Axios/Fetch)是异步的。
必须背诵: 在数据回来之前,页面不能卡死,必须展示 Loading 动画。这是合格前端的基本素养。
跨域 (CORS):
前端在 localhost:3000,后端在 localhost:8080。浏览器处于安全考虑会拦截请求。我们需要在后端配置 Allowed Origins。
2. 必须掌握的日语术语
画面遷移 (Gamen Sen-i): 页面跳转。
非同期 (Hi-douki): 异步。
連携 (Renkei): 联调/对接。比如“Front-Back Renkei”(前后端联调)。
3. 课后复盘自问
“什么是前后端分离?”
答: 前端只负责画图和拿数据,不处理业务逻辑;后端只负责处理逻辑和给数据,不负责画图。两者通过 JSON 格式的数据进行对话。
第四周:交付篇 —— 自动化与工程化
【本周目标】:摆脱“手工作坊”,进入“工业化生产”时代。这也是你区别于培训班学生的最大亮点。
1. 核心概念背诵
Docker (容器化):
痛点: “在我电脑上能跑,在服务器上报错。”
解决: Docker 把代码、JDK、Tomcat 全部打包成一个镜像 (Image)。只要有 Docker,哪里都能跑。
面试金句: “我使用 Docker 实现了环境的一致性,消除了 'Works on my machine' 的问题。”
CI/CD (持续集成/持续部署):
CI: 每次 git push,GitHub Actions 自动帮我编译、跑测试。测试不过,不许合并。
CD: 代码合并后,自动部署到服务器。
价值: 极大地提高了发布速度,降低了人工部署出错的概率。
YAML 配置:
理解 .yml 文件的缩进格式。无论是 Docker Compose 还是 GitHub Actions,都靠它指挥。
2. 必须掌握的日语术语
環境構築 (Kankyou Kouchiku): 环境搭建。
デプロイ (Deploy): 部署。
自動化 (Jidouka): 自动化。日企非常喜欢这个词。
本番環境 (Honban Kankyou): 生产环境/正式环境。
3. 课后复盘自问
“面试官问我:你的项目是怎么上线的?”
答(背诵): “我搭建了一套基于 GitHub Actions 的 CI/CD 流水线。当我推送代码时,流水线会自动构建 Docker 镜像并推送到 Docker Hub,然后通过 SSH 触发云服务器拉取最新镜像并重启容器。全过程无需人工干预。”
给学员的最终通关锦囊
关于报错:
遇到 Bug,第一步看 Console (控制台)。
第二步,复制报错信息(Caused by...),直接谷歌。
切记: 不要在没有看报错信息的情况下直接问助教“为什么跑不起来”,这是职场大忌。
关于提交作业:
Git Commit Message 必须规范。
❌ update
✅ feat: 添加订单状态流转逻辑 或 fix: 修复JWT解析失败的bug
心态建设:
这四周很难,你会掉头发。但只要你挺过去,独立做出了这个 CI/CD 自动化的航空系统,你就超过了 80% 只会写 CRUD 的应届生。
Comments (0)