今天跟大家唠唠我这几天搞的“桑德兰”项目,一开始我都没听过这个地儿,还是在看资料的时候才知道,原来是英格兰那边的一个港口城市。
我寻思着就当个练手项目,也没想太多。先把资料扒拉了一堆,啥地理位置、历史背景、经济发展,一股脑儿塞进脑子里。发现这地方煤炭资源挺丰富,以前还是英国工业革命的重要发源地,现在是个港口城市,有点意思。
然后就开始搭架子。我用的还是老一套,前端Vue,后端Spring Boot。Vue-cli直接生成项目,把基本的页面结构、路由啥的先搞定。Spring Boot那边,建好项目,配置好数据库连接,用的是MySQL。
接着就是数据库设计。我琢磨着,既然是个港口城市,那肯定得有港口信息、船只信息、进出口数据啥的。就照着这个思路,设计了几个表:port(港口)、ship(船只)、trade(贸易)。表结构设计好之后,用Navicat连上数据库,把表建顺便往里塞了点测试数据。
数据有了,就开始写接口。Spring Boot那边,controller、service、mapper一层层写下去,把增删改查接口都实现一遍。为了测试接口,我用了Postman,一个一个接口测试,确保数据能正常读取、写入、更新、删除。
前端页面也开始同步开发。根据接口返回的数据,把页面上的表格、图表啥的都渲染出来。为了美观,还加了点CSS样式,让页面看起来更舒服。
中间遇到了个坑,就是跨域问题。前端请求后端接口,浏览器报跨域错误。解决办法也很简单,在Spring Boot的controller上加个`@CrossOrigin`注解,允许跨域访问。
功能基本实现之后,就开始优化。把一些常用的数据缓存到Redis里,减少数据库访问压力。还加了点日志,方便排查问题。
把项目打包成Docker镜像,部署到服务器上。访问服务器的IP地址,就能看到完整的“桑德兰”项目了。
虽然只是个小项目,但还是学到了不少东西。从需求分析、数据库设计、前后端开发,到的部署上线,整个流程都走了一遍。下次再搞类似的项目,肯定会更得心应手。