当前位置: 当前位置:首页 > 热点 > web课程设计报告心得正文

web课程设计报告心得

作者:时尚 来源:综合 浏览: 【大 中 小】 发布时间:2026-10-17 06:43:24 评论数:

这学期Web课程设计我选的程设是做个校园二手交易平台。说实话,计报刚开始觉得不就是告心写几个页面嘛,能有多难。程设真正动手才发现,计报从数据库设计到前后端联调,告心每一步都在打脸。程设

先说说技术选型。计报老师课上讲的告心是JSP+Servlet,但我实在不想用那个,程设页面里嵌Java代码看着就头疼。计报跟老师商量后换成了Spring Boot加Thymeleaf。告心现在回头看,程设这个决定省了我不少事——Spring Boot的计报自动配置太香了,光数据源配置就少写几十行XML。告心不过Thymeleaf的语法刚开始真不习惯,th:each和th:if混着用的时候经常把页面搞崩,调试全靠浏览器控制台报错。

数据库这块踩了个大坑。我一开始设计用户表的时候,把学号设成主键,结果商品表的外键关联就出问题了——同一个用户发布多个商品,外键指向学号没问题,但我想加个“收藏”功能的时候,收藏表要同时关联用户和商品,用学号做外键字段长度对不上,改了半天。后来干脆全部换成自增ID,世界瞬间清净了。这事让我明白,主键这东西真不能图省事拿业务字段凑合。

前端页面我用的Bootstrap 5。响应式布局确实方便,但有个细节折腾了我一晚上:导航栏在移动端展开后,点击链接不会自动收起。查了半天文档才发现得自己写JS监听点击事件。代码就三行,但找这三行的过程花了三个小时。有时候解决问题的时间跟代码量真不成正比。

联调阶段最折磨人。后端接口返回的JSON里日期是时间戳,前端显示出来一串数字。我第一反应是前端格式化,但Thymeleaf模板里处理时间戳又得引入额外工具类。后来直接在实体类的日期字段上加了个@JsonFormat注解,问题解决。这种小坑一个接一个,每个都不难,但堆在一起特别消耗耐心。

做完之后我数了数,总共写了大概两千行代码,其中真正核心的业务逻辑可能就三四百行,剩下全是配置、异常处理、页面适配这些“周边工作”。以前觉得编程就是写算法,现在才体会到工程化的含义——让代码能跑起来只是第一步,让它稳定地跑、别人也能看懂地跑,才是更花时间的事。

有个意外收获是学会了看官方文档。以前遇到问题第一反应是搜博客,但很多博客要么版本对不上,要么直接抄来抄去。有次Spring Security的配置死活不生效,搜到的方案全是基于旧版本的,最后硬着头皮翻官方文档的迁移指南才搞定。官方文档确实枯燥,但准确。

如果重做一遍,我会先把数据库ER图彻底画清楚再动手写代码。这次中途改了三次表结构,每次都要回头改实体类、改Mapper、改前端字段名,牵一发动全身。前期多花两小时设计,后期能省两天调试。

最后提一句版本控制。我用Git管理代码,但提交记录惨不忍睹——“改bug”“再改”“终于好了”这种message占了八成。有次想回退到某个功能完成时的状态,翻了半天提交历史愣是没找到。下次一定老老实实写commit message,这是血泪教训。