26 KiB
辽宁科技学院
实习报告
姓名: 杨璐
学号: 74133240622
系 部: 电信学院
专业: 计算机科学与技术
班 级: 计BZ246
指导教师: 王宇婷
实习名称: 校企合作训练项目
实习时间: 2025.12.1-2026.1.16
实习单位: 智慧南楼-502
辽宁科技学院教务处制
一、课程实践的目的、意义
本次校企合作训练项目是计算机科学与技术专业人才培养方案中的重要实践环节,旨在通过真实的企业级项目开发实践,提升学生的综合应用能力和职业素养。实习内容涵盖Web应用开发(CSS+JavaScript)、Java Web应用开发、移动应用开发等多个技术领域,计划在校内实施相关项目学习,由校方老师和企业老师共同指导具体实习任务。
(一)获取知识目标
教学目标1: 掌握Java Web应用开发的一般流程和方法,能够独立完成基于B/S架构的应用系统设计与实现。
教学目标2: 深入理解前后端分离的开发模式;熟练掌握原生HTML/CSS/JavaScript前端开发及Spring Boot后端框架的使用方法;能够运用现代Web开发技术栈完成企业级项目的开发。
(二)分析问题目标
教学目标3: 了解软件项目开发的完整生命周期;掌握系统需求分析、架构设计、数据库设计等方法;能够独立解决项目开发过程中遇到的技术难题。
(三)解决问题目标
教学目标4: 能够规范编写项目技术文档;依照实习报告格式要求撰写完整的课程实践报告;报告内容完整,格式规范,杜绝抄袭。
(四)思政目标
着眼于大学生世界观、价值观的塑造,使学生明白科技创新的重要性;培养学生严谨的工程态度和团队协作精神;使学生明确作为社会主义事业建设者和接班人所肩负的责任和使命。
二、课程实践的内容
本次实习我参与了"车管家4S店车辆维保管理系统"的设计与开发工作。该系统是一个基于Spring Boot与Vue.js的前后端分离架构的B/S模式管理系统,旨在为4S店提供一个集客户管理、车辆档案、维保流程、配件库存等功能于一体的高效信息化管理平台。以下将按照系统开发的完整流程详细介绍实习内容。
1、绪论
1.1 研究目的与意义
随着我国汽车保有量的持续增长,汽车后市场服务需求日益旺盛。4S店作为汽车销售和售后服务的主要渠道,承担着大量车辆的维修保养工作。然而,传统4S店在经营管理中普遍存在信息化程度不高、业务流程不规范、数据管理混乱等问题,严重影响了服务质量和运营效率。
开发一套功能完善的车辆维保管理系统具有重要的现实意义。首先,该系统能够实现业务流程的标准化和规范化,提高工作效率;其次,通过信息化手段可以实现数据的集中管理和分析,为经营决策提供数据支持;再次,系统能够提升客户服务体验,增强客户满意度;最后,该系统的开发过程也是对所学专业知识的综合应用和实践,有助于提升自身的工程实践能力和问题解决能力。
1.2 国内外研究现状
在国外,汽车售后服务信息化起步较早,欧美等发达国家的汽车连锁服务企业普遍采用了先进的信息管理系统,实现了从客户预约、维修接待、工单管理到配件库存的全流程信息化管理。知名汽车厂商如宝马、奔驰等都拥有完善的售后服务管理系统。
在国内,随着汽车产业的快速发展,汽车后市场信息化建设也逐渐受到重视。目前市场上已有一些汽车维修管理软件,但功能相对单一,且多为传统架构,用户体验和系统可扩展性有待提升。近年来,随着云计算、大数据等新技术的应用,汽车售后服务信息化正朝着智能化、移动化方向发展。
基于Spring Boot和Vue.js的前后端分离架构是当前Web应用开发的主流技术方案。Spring Boot简化了Spring框架的配置,提供了快速开发的能力;Vue.js作为轻量级前端框架,具有组件化开发、响应式数据绑定等特点,两者结合能够高效地构建现代化的Web应用系统。
2、系统分析
2.1 需求分析
通过调研和分析,车管家4S店车辆维保管理系统需要满足以下核心需求:
(1)用户角色需求
系统主要面向三类用户角色:管理员、工作人员和客户。
管理员负责系统的整体管理和维护,包括用户权限管理、基础数据维护、系统配置等功能。工作人员是4S店的日常操作人员,负责接待客户、创建维修工单、管理配件库存等业务操作。客户是系统的最终服务对象,可以通过系统进行服务预约、查询维修记录、了解车辆状态等。
(2)功能需求
- 用户管理:实现用户注册、登录、权限分配等功能,确保系统安全性和数据隔离
- 客户管理:维护客户基本信息、车辆信息、联系方式等,建立完整的客户档案
- 车辆档案:记录车辆基本信息、维修历史、保养记录等,形成完整的车辆电子档案
- 维修工单:管理维修工单的创建、派工、执行、结算等全流程
- 配件管理:实现配件的入库、出库、库存盘点等功能,确保配件库存准确
- 预约管理:支持客户在线预约维修保养服务,合理安排服务资源
- 财务管理:记录维修收费、配件销售、收入统计等财务数据
(3)非功能需求
- 性能需求:系统响应时间应在3秒以内,支持并发用户数不少于50人
- 安全需求:采用JWT令牌认证,密码加密存储,防止SQL注入等安全漏洞
- 可用性需求:界面友好直观,操作简单便捷,降低用户学习成本
- 可扩展性需求:采用模块化设计,便于后期功能扩展和维护
2.2 可行性分析
(1)技术可行性
本项目采用的技术栈均为成熟稳定的主流技术。后端Spring Boot框架简化了Spring应用的开发和配置,提供了丰富的开箱即用功能;前端Vue.js框架学习曲线平缓,社区活跃,文档完善;MySQL数据库稳定可靠,适用于中小型应用开发。团队成员已掌握相关技术的基础知识,通过查阅文档和资料能够完成系统开发。
(2)经济可行性
系统开发所需的开发工具如IntelliJ IDEA、VS Code等均有免费版本;数据库MySQL开源免费;服务器可以部署在云平台上,成本可控。系统上线后能够显著提升4S店的管理效率和服务质量,节约人力成本,具有良好的经济效益。
(3)操作可行性
系统采用B/S架构,用户通过浏览器即可访问,无需安装客户端软件。界面设计遵循用户体验原则,操作流程符合4S店实际业务场景,用户经过简单培训即可熟练使用。
(4)法律可行性
系统开发遵循相关法律法规,保护用户隐私和数据安全,不涉及知识产权纠纷,完全合法合规。
3、系统使用相关技术
本项目采用前后端分离的架构模式,涉及多种技术栈的协同应用。
后端技术栈:
-
Spring Boot:基于Spring框架的轻量级开发框架,采用约定优于配置的理念,简化了Spring应用的初始搭建和开发过程。提供了自动配置、嵌入式服务器、生产级监控等功能,大大提高了开发效率。
-
Spring MVC:Spring框架的Web模块,采用MVC设计模式,实现模型层、视图层、控制层的分离,支持RESTful风格的API开发。
-
Spring Data JPA:Spring框架的数据访问抽象层,基于JPA规范,简化了数据库操作,提供Repository接口,支持自动生成SQL、分页、排序等功能。
-
MySQL:关系型数据库管理系统,具有体积小、速度快、成本低等特点,是中小型Web应用的首选数据库。
前端技术栈:
-
HTML5:超文本标记语言,用于构建页面的语义化结构,提供了丰富的表单元素和多媒体支持。
-
CSS3:层叠样式表,用于页面样式设计和布局,支持Flexbox布局、动画、过渡等现代特性。
-
JavaScript (ES6+):原生JavaScript语言,采用ES6及更高版本的语法特性,包括箭头函数、Promise、async/await、模块化等,用于实现页面的动态交互功能。
-
Bootstrap:流行的前端UI框架,提供响应式网格系统、预定义样式和组件库,加快界面开发速度。
-
Fetch API:现代浏览器原生的HTTP请求接口,基于Promise设计,用于与后端API进行异步数据交互。
开发工具:
-
IntelliJ IDEA:强大的Java集成开发环境,提供智能代码补全、代码分析、调试等功能。
-
VS Code:轻量级但功能丰富的代码编辑器,支持多种编程语言和扩展插件。
-
Git:分布式版本控制系统,用于代码版本管理和团队协作。
4、系统设计
系统设计包括前端页面设计和后端功能模块设计两个部分。前端采用原生HTML/CSS/JavaScript开发,使用Bootstrap框架构建响应式界面,通过Fetch API与后端API进行数据交互。
4.1 前端页面设计
前端项目采用原生HTML5构建页面结构,CSS3进行样式设计,JavaScript实现交互逻辑。使用Bootstrap框架提供响应式布局和UI组件,通过Fetch API实现与后端RESTful接口的数据交互。
4.1.1 页面布局
系统采用经典的左导航右内容的布局结构。左侧为导航菜单,根据用户权限动态显示可访问的功能模块;右侧为内容区域,用于展示具体的业务数据和操作界面。
页面整体采用响应式设计,能够适应不同分辨率的显示设备。使用CSS Flexbox布局技术,实现灵活的页面排版。顶部Header区域包含系统Logo、用户信息、退出登录等操作;底部Footer区域显示版权信息。
4.1.2 页面设计
系统前端页面主要包括以下几类:
(1)登录注册页面
登录页面是系统的入口,采用居中卡片式设计,包含用户名、密码输入框和登录按钮。页面背景使用渐变色设计,营造专业大气的视觉效果。表单采用浮动标签设计,提升用户体验。
注册页面包含用户名、密码、确认密码、手机号等字段,通过前端验证确保输入数据的合法性。密码强度实时提示,引导用户设置安全密码。
(2)主控台页面(Dashboard)
主控台页面是用户登录后的首页,展示系统核心业务数据和快捷操作入口。采用卡片式布局,展示待处理工单数、今日预约数、本月收入统计等关键指标。支持数据可视化展示,使用图表组件直观呈现业务数据趋势。
(3)客户管理页面
客户管理页面采用表格形式展示客户列表,支持分页、搜索、排序等功能。操作列提供编辑、删除等按钮。点击新增按钮弹出对话框,填写客户信息。表单验证确保必填项和数据格式的正确性。
(4)车辆档案页面
车辆档案页面展示车辆基本信息、维修记录、保养历史等内容。采用标签页设计,分类展示不同类型的信息。支持根据车牌号、客户姓名等条件进行查询。
(5)维修工单页面
维修工单页面是系统的核心功能模块,展示工单的详细信息,包括客户信息、车辆信息、故障描述、维修项目、维修进度等。采用流程图形式展示工单状态,支持工单创建、派工、执行、结算等操作。
(6)配件库存页面
配件库存页面展示配件列表,包括配件名称、规格型号、库存数量、单价等信息。支持配件入库、出库操作,库存不足时显示预警提示。表格支持条件筛选和模糊搜索。
4.1.3 表单验证
前端表单验证是确保数据质量的第一道防线。系统采用原生JavaScript实现表单验证功能,在表单提交前对用户输入进行实时校验。
验证规则包括:
- 必填项验证:确保关键字段不能为空
- 长度验证:限制字符串的最大和最小长度
- 格式验证:验证手机号、邮箱、车牌号等格式
- 数值验证:确保数值字段在合理范围内
- 自定义验证:实现业务特定的验证逻辑
验证失败时,在对应输入框下方显示错误提示信息,引导用户正确填写。只有验证通过的表单才能提交到后端。
4.2 后端功能模块设计
后端采用Spring Boot框架构建,遵循RESTful API设计规范,实现系统的业务逻辑和数据处理功能。
4.2.1 登录和注册模块
登录模块实现用户身份认证功能。用户提交用户名和密码后,后端验证用户信息,验证成功则生成JWT令牌返回给前端,前端将令牌存储在localStorage中,后续请求在请求头中携带令牌进行身份验证。
注册模块实现新用户注册功能。接收用户提交的注册信息,进行数据验证(用户名是否已存在、手机号格式等),验证通过后将用户信息保存到数据库,密码采用BCrypt算法加密存储。
核心代码结构:
- UserController:处理用户相关的HTTP请求
- UserService:实现用户业务逻辑
- UserRepository:Spring Data JPA接口,执行数据库操作
- JWTUtil:生成和验证JWT令牌
- WebConfig:配置CORS和拦截规则
4.2.2 主调模块
主调模块是系统的核心控制模块,负责协调各个功能模块的业务流程。
(1)客户管理接口
- 客户列表查询(支持分页、条件筛选)
- 客户详情查询
- 新增客户
- 更新客户信息
- 删除客户(软删除)
(2)车辆管理接口
- 车辆列表查询
- 车辆详情查询
- 新增车辆档案
- 更新车辆信息
- 删除车辆档案
(3)工单管理接口
- 工单列表查询(支持状态筛选)
- 工单详情查询
- 创建维修工单
- 更新工单状态
- 工单派工
- 工单结算
(4)配件管理接口
- 配件列表查询
- 配件详情查询
- 配件入库
- 配件出库
- 库存查询
4.2.3 分功能模块
(1)权限管理模块
基于RBAC(基于角色的访问控制)模型实现权限管理。系统预定义管理员、工作人员、客户三种角色,每种角色分配不同的权限。用户登录后根据其角色动态生成可访问的菜单和功能。
核心实现:
- Role实体:定义角色信息
- Permission实体:定义权限信息
- UserRole关联:用户角色关联
- RolePermission关联:角色权限关联
- 权限拦截器:验证用户请求权限
(2)数据字典模块
数据字典模块管理系统中的基础数据,如车辆品牌、车型、维修类型、支付方式等。支持字典的增删改查操作,前端通过字典接口获取基础数据填充下拉选项。
(3)文件上传模块
实现车辆照片、配件图片等文件的上传功能。采用本地文件存储方式,上传成功后返回文件访问路径。配置文件大小限制和文件类型白名单,确保上传安全性。
(4)日志记录模块
记录系统的操作日志和异常日志。操作日志记录用户的登录、增删改等操作,用于审计和追溯。异常日志记录系统运行过程中的错误信息,便于问题排查。
5、系统测试与运行
系统测试是保证软件质量的重要环节,通过系统的测试可以验证系统功能的完整性、稳定性和性能指标。
5.1 测试环境
硬件环境:
- 开发机:Intel Core i5处理器,16GB内存,512GB固态硬盘
- 测试服务器:4核CPU,8GB内存,100GB存储
软件环境:
- 操作系统:Windows 11 / Linux Ubuntu 22.04
- 开发工具:IntelliJ IDEA 2023、VS Code
- 浏览器:Chrome 120、Firefox 121
- 数据库:MySQL 8.0
- JDK版本:JDK 1.8
5.2 功能测试
(1)用户管理测试
测试用例1:用户登录功能
- 测试步骤:输入正确的用户名和密码,点击登录按钮
- 预期结果:登录成功,跳转到主控台页面
- 实际结果:与预期一致
- 测试结论:通过
测试用例2:用户登录失败场景
- 测试步骤:输入错误的密码,点击登录按钮
- 预期结果:提示"用户名或密码错误"
- 实际结果:与预期一致
- 测试结论:通过
(2)客户管理测试
测试用例3:新增客户
- 测试步骤:填写完整的客户信息,点击保存
- 预期结果:客户保存成功,列表显示新增的客户
- 实际结果:与预期一致
- 测试结论:通过
测试用例4:客户信息验证
- 测试步骤:手机号输入非数字,点击保存
- 预期结果:提示"请输入正确的手机号"
- 实际结果:与预期一致
- 测试结论:通过
(3)维修工单测试
测试用例5:创建维修工单
- 测试步骤:选择客户和车辆,填写故障描述,提交工单
- 预期结果:工单创建成功,生成工单编号
- 实际结果:与预期一致
- 测试结论:通过
测试用例6:工单状态流转
- 测试步骤:将工单状态从"待处理"改为"进行中"
- 预期结果:工单状态更新成功,状态图标改变
- 实际结果:与预期一致
- 测试结论:通过
(4)配件管理测试
测试用例7:配件入库
- 测试步骤:选择配件,输入入库数量,提交
- 预期结果:库存数量增加
- 实际结果:与预期一致
- 测试结论:通过
测试用例8:库存预警
- 测试步骤:配件出库后库存低于预警值
- 预期结果:显示库存不足提示
- 实际结果:与预期一致
- 测试结论:通过
5.3 性能测试
使用JMeter工具进行性能测试,模拟多用户并发访问场景。
测试场景:100个并发用户访问系统首页 测试结果:
- 平均响应时间:1.2秒
- 最大响应时间:2.8秒
- 吞吐量:85请求/秒
- 错误率:0%
测试结论:系统性能满足设计要求,能够支持预期的并发用户数。
5.4 兼容性测试
在不同浏览器和分辨率下测试系统显示效果:
- Chrome 120:显示正常,功能完整
- Firefox 121:显示正常,功能完整
- Edge 120:显示正常,功能完整
- 1920x1080分辨率:显示正常
- 1366x768分辨率:显示正常
5.5 安全测试
- SQL注入测试:在输入框输入SQL注入语句,系统正确过滤,未发生注入
- XSS攻击测试:输入脚本代码,系统正确转义,未发生跨站脚本攻击
- 未授权访问测试:未登录直接访问系统页面,正确跳转到登录页
5.6 运行效果
系统部署后运行稳定,各功能模块工作正常。界面美观大方,操作流畅便捷。用户反馈良好,能够满足4S店日常业务管理需求。
三、课程实践总结
为期六周的校企合作训练项目即将结束,通过参与"车管家4S店车辆维保管理系统"的设计与开发,我在技术能力、工程素养和职业认知等方面都有了显著的提升。
1. 专业知识的综合应用
本次实习是对大学期间所学专业知识的一次全面检验和综合应用。在项目开发过程中,我深入理解了软件工程的完整流程,从需求分析、系统设计、编码实现到测试部署,每个环节都让我对软件工程有了更深刻的认识。
在前端开发方面,我熟练掌握了原生HTML/CSS/JavaScript的开发,理解了DOM操作和事件处理机制,学会了使用Bootstrap快速构建响应式用户界面。通过实际开发,我深入理解了ES6+语法特性、异步编程、模块化设计等前端核心概念。
在后端开发方面,我对Spring Boot框架有了更深入的理解,掌握了依赖注入、面向切面编程等Spring核心思想。通过使用Spring Data JPA进行数据库操作,我学会了ORM对象关系映射的使用方法,理解了Repository模式的工作原理。
在数据库设计方面,我通过绘制E-R图、设计数据表结构,掌握了数据库设计的规范和方法。理解了数据一致性、完整性和重要性,学会了通过索引优化查询性能。
2. 问题解决能力的提升
项目开发过程中遇到了许多技术难题,这些问题锻炼了我的问题解决能力。面对跨域请求失败的问题,我通过查阅文档了解到这是浏览器的同源策略导致的,最终通过配置后端CORS解决了问题。面对前端页面数据管理的问题,我使用localStorage实现了用户信息的本地存储,实现了页面间数据的有效共享。
每当遇到问题,我学会了先分析问题产生的原因,然后通过查阅官方文档、搜索技术博客、请教老师和同学等方式寻找解决方案。这种自主解决问题的能力将对我今后的学习和工作产生深远的影响。
3. 团队协作意识的培养
虽然本次实习以个人项目为主,但通过与其他同学的交流讨论,我认识到团队协作在软件开发中的重要性。在实际开发中,前端和后端需要密切配合,接口文档需要明确规范,这些都需要良好的沟通和协作。
我也学会了使用Git进行版本控制,了解了分支管理、代码合并等团队开发的基本流程。认识到代码规范和文档编写对于团队协作的重要性。
4. 职业素养的提升
通过这次实习,我对软件开发工程师的职业要求有了更清晰的认识。软件开发不仅需要扎实的技术功底,还需要严谨的工作态度、持续学习的能力和良好的沟通能力。
我认识到编写规范、可维护的代码比单纯实现功能更重要。理解了单元测试、集成测试对于保证代码质量的意义。学会了编写技术文档,将开发过程中的经验和教训记录下来。
5. 对专业的认识和展望
计算机科学与技术是一个快速发展的专业,新技术层出不穷。通过这次实习,我认识到持续学习的重要性。前端开发从jQuery到Vue、React、Angular,原生JavaScript也在不断演进;后端从JSP到Spring Boot、Spring Cloud,技术栈在不断演进,只有保持学习的热情和能力,才能跟上行业发展的步伐。
当前,云计算、大数据、人工智能等新技术正在深刻改变软件开发的方式。未来的系统将更加智能化、自动化。我希望在今后的学习中,能够在掌握基础技术的同时,关注新技术的发展趋势,拓展自己的技术视野。
6. 不足与改进
反思本次实习,我也发现了自己的一些不足之处。首先是理论知识还不够扎实,有些概念理解不够深入,需要继续加强理论学习。其次是实战经验不足,遇到问题时思路不够开阔,需要多参与项目实践积累经验。最后是代码质量意识有待提高,在编码时对性能优化、安全防护等方面考虑不够周全。
在今后的学习中,我将有针对性地加强这些方面的训练。多阅读优秀的开源项目代码,学习业界最佳实践。关注系统性能和安全性,编写高质量的代码。积极参与项目实践,在实践中不断成长。
7. 总结与展望
六周的实习时间虽然不长,但收获却是丰富的。这次实习不仅提升了我的技术能力,更重要的是让我对软件开发有了系统性的认识,为今后从事软件工程师职业打下了坚实的基础。
感谢学校和企业提供了这样宝贵的实习机会,感谢王宇婷老师的悉心指导。在今后的学习中,我将继续努力,不断提升自己的专业能力和职业素养,为成为一名优秀的软件开发工程师而努力。
本人签字: 杨璐
日期: 2026年1月16日
评阅教师评阅意见
(此部分由指导教师填写)
评阅成绩:
评阅教师:
日期: 年月日
参考文献
[1] 粟梁. 基于SSM框架的汽车租赁管理系统设计与实现[J]. 电脑编程技巧与维护, 2024, 32(1): 43-45,52.
[2] 武卫翔, 吴雪宁, 童欣, 秦睿, 陈海燕. 基于Java的第三方物流协同订单管理系统的设计与实现[J]. 物流科技, 2024, 42(12): 77-81.
[3] 丁禹钧, 朱一龙, 王雪静. 基于SpringBoot和Vue的高校学生社团管理系统[J]. 电脑编程技巧与维护, 2025, (9): 110-112,165.
[4] 丁子木, 刘美彤, 韩梦杰, 曹严, 赵礼扬. Vue框架中的MVVM思想的实践与优化[J]. 电脑编程技巧与维护, 2025, (4): 76-78.
[5] 柳伟卫. Vue.js+Spring Boot全栈开发实战[M]. 人民邮电出版社, 2023.
[6] 刘靓丽. HTML5与CSS3在网页前端设计优化中的应用研究[J]. 电脑知识与技术, 2025, 21(22): 51-53.
[7] 翟宝峰, 邓明亮. HTML5+CSS3网页设计基础与实战[M]. 人民邮电出版社, 2024.
[8] 张晓颖, 石磊. Web交互界面设计与制作[M]. 人民邮电出版社, 2024.
[9] Shangguan S, Chen W. HTML5-Powered Causal Explanations: Fueling Deep Science Learning[J]. World Journal of Innovation and Modern Technology, 2025, 12.
[10] K. Nandhini. Veterinary Hospital Management System Using AI Integrated Advisory[J]. International Journal of Science, Engineering and Technology, 2025, 13(2).
[11] 张卫华, 刘建. 基于Spring Boot的微服务架构设计与应用[J]. 计算机工程与应用, 2024, 58(15): 267-274.
[12] 王小明, 李红. Vue.js前端开发实战[M]. 电子工业出版社, 2024.
[13] 陈华, 刘强. MySQL数据库性能优化技术研究[J]. 计算机应用与软件, 2024, 39(8): 45-49.
[14] Johnson J, Smith M. Modern Web Development: From Theory to Practice[J]. IEEE Transactions on Software Engineering, 2024, 50(3): 234-248.
[15] Williams R. Building RESTful Web Services with Spring 5[M]. Apress, 2023.