大二小白的 Java 实战初体验day01:一个简易 12306 购票系统

2025博客之星年度评选已开启 10w+人浏览 2.9k人参与

前言:这个系统其实是作者的JavaEE大作业,布置下来的时候其实是有一点不可思议的(无奈笑哭)因为作者正式开始学习Java是在大一下的暑假,花了一整个暑假才将Java的面向对象稍微吃透,然后学习SpringBoot断断续续也才一个月,对Java的理解可以说还是很浅的,写这篇文章的初衷一方面是想记录一下自己第一个项目,也是想给后面学习Java的同志们一点点参考的价值,虽然系统做的很烂,但是还是想发表自己的一点点见解。

一、需求分析

        这个是作者的老师所要求的,然后我具体拆分了一下然后选择了网页版的项目开发(微信小程序当时没学)具体的拆分如下:

1.用户认证功能

        这里采用的是最原始的登录注册,没有JWT没有密码加密,采用的仅仅是前端传入的用户名和密码与数据库的数据进行比对,相同则成功,最基本的登陆注册。

2.火车票查询功能

        首先我构思了一下我想要的页面结构,然后我也参考了一部分GitHub上开源的项目,最后提交出来的效果如图所示:

        主要有的功能就是分页查询所有在售车票,可以通过出发站、到达站查询,按出发时间、到达时间查询,按座位类型筛选,按列车类型筛选。然后加了一个车票余量可视化。

3.车票预定功能

        车票预定板块主要是从车票查询页面进行跳转,用户可以通过查询到想要乘坐的列车,然后进行预订,用户可以获取到座位信息,选择想要的座位,添加乘客的信息。具体的页面如图:

        当用户选择不同的座位类型的时候,下方会出现不同的座位布局。

        因为作业要求是完成类似于淘票票的选座功能,不能和12306一样仅仅只能看到单排的座位,全凭命运获得座位(可能是老师没抢到车票破防吧)

4.乘客管理功能

        用户可以通过乘车人功能查询到自己添加的乘车人,然后添加新的乘车人、删除修改等操作,具体如图:

        这里也进行了一个分页查询,然后做了一个模糊查询。

5.订单管理功能

        用户可以通过身份证查询自己的车票(这里的逻辑有很大的问题)然后可以选择取消该车票,具体如图:

       

        至此需求分析结束,其实还有很大一部分的功能没有完全开发,因为作者的技术还是有限,同时有一部分功能只能做成一个类似的,希望读者勿喷。

二、技术栈

        在设计整个系统之前,我结合的是我老师所教的一些技术和网上自学的一部分技术。

        项目整体是Spring Boot+Thymeleaf+MyBatis+MySQL开发的。JDK版本用的是JDK17,页面选型用的是HTML+JavaScript,采用的是标准的MVC架构设计。

        然后整个项目我是在IDE上面去写的,但是作者的代码能力还是欠佳,所以利用ai的地方还是有的,复杂的功能如选座功能,我是利用了字节跳动的Trae,帮助我去完成这块的功能开发,然后利用了SOLO模式来开发(效率确实提升了很多)。

        整体来说项目用到的技术一般般,也符合这个时候的作者的技术水准,正所谓一步步来。

ps:这里解释一下为什么没有用到CSS,因为作者在学习前端的时候没有放很多的精力,所以导致自己写前端的时候可以说是十分吃力,甚至连基础的样式设置都不太会(我觉得有一部分的同学可能和我一样,这块的能力还是很薄弱的,这块的能力我决定是寒假去学习一下然后尝试做一个小的项目)

三、结语

        这篇文章主要是记录了我作为刚迈入Java圈子的这个时期,各位大佬可以指点一下具体应该怎么做,作者乐意听取各方意见,同时我也想为了后续有新同志迈入这个区域做一点指导意见。

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值