笔者在本科期间的专业虽然是CS,但是主攻的方向是算法相关,毕设方向也是基于深度学习相关,因此笔者的实际项目开发经验甚少,只有几门课设的程度
这篇文章旨在记录笔者从拾Java开发的路程,从简单的Java项目开始到分布式架构项目实践
复健路线
阶段一:Java基础巩固 + JavaFX入门
项目1:学生管理系统(JavaFX桌面版)
技术栈:Java 8 + JavaFX + JDBC + MySQL
核心目标:
- 掌握 JavaFX 基础组件(Scene、Stage、FXML)
- 理解事件驱动编程
- 实现简单的 CRUD 操作
功能实现:
- 使用 JavaFX 构建用户界面(FXML + CSS)
- 实现学生信息的增删改查
- 数据持久化到 MySQL
JavaFX 相关技术点:
- FXML:用于定义 UI 布局
- TableView:展示学生列表
- 事件绑定:按钮点击事件处理
- CSS 样式:美化界面
阶段二:企业级开发入门 + JavaFX进阶
项目2:图书借阅系统(JavaFX + Spring Boot)
技术栈:JavaFX + Spring Boot + JPA + RESTful API
核心目标:
- 掌握 JavaFX 与 Spring Boot 的集成
- 实现前后端分离
- 学习 HTTP 通信(REST API)
功能实现:
- 使用 JavaFX 构建图书管理界面
- 通过 REST API 与后端交互
- 实现图书的借阅和归还功能
JavaFX 相关技术点:
- HTTP 请求:使用
HttpClient
调用 REST API - 数据绑定:将后端数据动态绑定到 TableView
- 多窗口管理:实现登录窗口和主窗口切换
阶段三:分布式架构实践 + JavaFX高级
项目3:微服务天气查询系统(JavaFX + Spring Cloud)
技术栈:JavaFX + Spring Cloud + Feign + Redis
核心目标:
- 理解微服务拆分
- 掌握服务间通信
- 实现数据可视化
功能实现:
- 使用 JavaFX 构建天气查询界面
- 集成天气 API(如 OpenWeatherMap)
- 使用 JavaFX 图表库展示天气数据
JavaFX 相关技术点:
- 图表库:使用
LineChart
或BarChart
展示温度趋势 - 异步加载:使用
Task
和Service
实现后台数据加载 - 动态更新:实时刷新天气数据
项目一
项目结构
student-management
├── src
│ ├── main
│ │ ├── java
│ │ │ └── com.example.student
│ │ │ ├── Main.java // 应用程序入口点
│ │ │ ├── config
│ │ │ │ └── DatabaseConfig.java // 数据库配置
│ │ │ ├── controller
│ │ │ │ ├── StudentController.java // 处理学生相关的UI事件
│ │ │ │ └── MainController.java // 主窗口控制器
│ │ │ ├── dao
│ │ │ │ ├── StudentDao.java // 学生数据访问接口
│ │ │ │ └── StudentDaoImpl.java // 实现类
│ │ │ ├── model
│ │ │ │ └── Student.java // 学生实体类
│ │ │ ├── service
│ │ │ │ ├── StudentService.java // 业务逻辑接口
│ │ │ │ └── StudentServiceImpl.java // 实现类
│ │ │ └── util
│ │ │ └── DatabaseUtil.java // 数据库工具类
│ │ └── resources
│ │ ├── css
│ │ │ └── style.css // 全局样式表
│ │ ├── fxml
│ │ │ ├── main.fxml // 主窗口布局
│ │ │ └── student-form.fxml // 学生表单布局
│ │ └── images // 图标等资源
│ └── test
│ └── java
│ └── com.example.student
│ └── service
│ └── StudentServiceTest.java // 单元测试
├── pom.xml // Maven 配置文件
└── README.md // 项目说明文档