基于Java/springboot铁路物流数据平台的设计与实现

摘要

随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,铁路物流数据平台当然也不能排除在外,从文档信息、铁路设计的统计和分析,在过程中会产生大量的、各种各样的数据。本文以铁路物流数据平台为目标,采用B/S模式,以Springboot为开发框架,java为开发语言、Eclipse为开发工具,MySQL为数据管理平台,实现铁路物流数据平台中的实现用户、文件分类、文档信息、成果分类、成果信息、铁路设计、数据分析等功能。

关键词 铁路物流数据平台; Springboot框架;MySql数据库;java语言

Abstract

With the rapid development of science and technology, all aspects of society and all walks of life are trying to integrate with modern advanced technology and improve their own advantages through scientific and technological means. Of course, the railway logistics data platform can not be excluded. From the document information and the statistics and analysis of railway design, a large number and all kinds of data will be generated in the process. Aiming at the railway logistics data platform, this paper adopts B / S mode, takes springboot as the development framework, Java as the development language, eclipse as the development tool and MySQL as the data management platform to realize the functions of users, file classification, document information, result classification, achievement information, railway design and data analysis in the railway logistics data platform.

Key words: railway logistics data platform; Springboot framework; Mysql database; Java language

目 录

[1 绪论](#1 绪论)

[1.1 选题的背景 2](#1.1 选题的背景 2)

[1.2 研究的主要内容 3](#1.2 研究的主要内容 3)

[1.3 系统开发的意义 4](#1.3 系统开发的意义 4)

[1.4 初步设计方法与实施方案](#1.4 初步设计方法与实施方案)5

[1.5 本文研究内容 6](#1.5 本文研究内容 6)

[2 开发环境和相关技术 7](#2 开发环境和相关技术 7)

[2.1 系统的开发环境 8](#2.1 系统的开发环境 8)

[2.2 技术路线 9](#2.2 技术路线 9)

[2.2.1 ++++Springboot++++ 框架 1](#2.2.1 Springboot框架 1)0

[2.2.2 B/S结构 1](#2.2.2 B/S结构 1)1

[2.2.3 Mysql介绍 1](#2.2.3 Mysql介绍 1)2

[2.2.4 ++++java语言++++ 1](#2.2.4 java语言 1)3

[3 系统的可行性研究及需求分析 1](#3 系统的可行性研究及需求分析 1)4

[3.1 可行性研究 15](#3.1 可行性研究 15)

[3.1.1 经济可行性分析 1](#3.1.1 经济可行性分析 1)6

[3.1.2 技术可行性分析 1](#3.1.2 技术可行性分析 1)7

[3.2 需求分析 1](#3.2 需求分析 1)8

[3.2.1 用户需求分析 1](#3.2.1 用户需求分析 1)7

[3.2.2 功能需求分类 2](#3.2.2 功能需求分类 2)0

[3.2.3 网站性能需求分析 2](#3.2.3 网站性能需求分析 2)1

[3.3 系统流程分析 2](#3.3 系统流程分析 2)2

[3.4 网站现状分析 2](#3.4 网站现状分析 2)3

[4 系统的总体设计与实现 2](#4 系统的总体设计与实现 2)4

[4.1 总体设计 2](#4.1 总体设计 2)5

[4.2 数据库设计 2](#4.2 数据库设计 2)6

[4.2.1 概念模型设计 2](#4.2.1 概念模型设计 2)7

[4.2.2 物理模型设计 2](#4.2.2 物理模型设计 2)8

[5 系统的详细设计与实现 2](#5 系统的详细设计与实现 2)9

[5.1 管理员功能模块 3](#5.1 管理员功能模块 3)0

[5.2 用户功能模块](#5.2 用户功能模块)31

[6 系统测试 3](#6 系统测试 3)2

[结论 3](#结论 3)3

[致谢 3](#致谢 3)4

[参考文献 3](#参考文献 3)5

1 绪论

1.1选题的背景

随着电子技术的普及和快速发展,线上管理系统被广泛的使用,有很多机构或、铁路公司等都在实现电子信息化管理,铁路物流数据平台也不例外,由比较传统的人工管理转向了电子化、信息化、系统化的管理。

传统的铁路物流数据,一开始都是管理者进行手工记录,然后将手工记录的信息进行存档;随着电脑的普及,铁路物流数据演变成了手工记录后,输入电脑进行存档。这两种管理方式,对管理员来说工作量大,后期铁路物流数据信息的管理还需要花费大量时间。而且这种传统统计的方式,容易出现遗失或因为失误输入错误的信息等等。在这些基础上,我把用java语言开发的铁路物流数据平台作为我的毕业设计,希望可以解决传统铁路物流数据中出现的问题,简化管理者的工作,对各种信息进行系统化、电子化的管理。

1.2 研究的主要内容

研究的基本内容:本设计主要是实现一个铁路物流数据平台,实现铁路物流数据平台的自动化、信息化、管理。系统的主要的设计原则是:以实际应用为核心,重点突出"实用、易用、简洁、稳定"的优点。既能够注重到实效,满足现实用户的实际需要,也能够为系统以后的升级和扩展留有一定的余地。在技术设计的实现上,突出"实现合理、结构清晰、简单易懂"的特点。

本系统的主要目的在于加速铁路物流数据的信息化进程,充分利用计算机技术和现代通讯的手段面向文档信息或铁路设计的功能。建立一个方便管理的铁路物流数据的平台,方便信息资源的共享,提高管理的效率,为用户提供在线查看数据分析服务。本系统将最大程度地提高铁路物流数据效率,降低管理和工作的成本,改善工作的环境和条件,提高铁路公司的管理和决策的自动化和科学化水平。帮助铁路公司节省费用,减少中间环节,优化业务流程,提高整体效率,促进管理的进步。

1.3 系统开发的意义

随着互联网技术的发展,人们的生活无处不在的受到互联网技术影响,而互联网技术给人们生活带来的便利是不言而喻的。对于现代化的铁路物流数据平台而言,它的目的并不是减少管理者的工作量,而是让管理者们从繁琐的信息填写过程中解脱出来,将更多的关注点放到关注文档信息或铁路设计需求等上去,这样就可以提高铁路公司的文档信息效率,提高管理员工作效率,所以开发本系统是十分有意义的。

1.4初步设计方法与实施方案

软件体系结构方案:由于本系统需要在不同设备上都能运行,而且电脑配置要求也要越低越好,为了实现这一要求,经过考虑B/S结构成为最佳之选。使用B/S结构的系统可以几乎在任何电脑上运行,只要浏览器可以正常工作就可以正常运行该系统,而且后期维护及二次修改较为容易,符合要求。

操作系统方案:Windows10操作系统,该系统是目前微软公司推出的最新系统,目前大多数市面上的电脑都使用该系统,并且该系统功能完善,兼容性好。开发工具:选用 Eclipse、java开发技术。

1.5 本文研究内容

本文主要分为七个章节,第一部分为绪论,主要介绍了目前电脑技术发展状况、铁路物流数据平台行业发展阶段,分析传统铁路物流数据信息的弊端以及使用信息技术来管理铁路物流数据信息的好处。

第二部分为相关技术简介,主要介绍了各技术的发展历程,技术发展现状,技术优点以及选用该技术的原因等。

第三部分为系统分析,主要分析了软件设计所需要的功能。

第四部分为系统设计,主要进行了系统的架构设计、数据库设计等。

第五部分为系统详细设计。

第六部分为系统调试与测试,利用测试方法进行可行性测试、性能测试、系统测试等。

第七部分为总结与致谢,主要总结了程序设计的完成过程及完成情况,比对完成设计过程中施以援手的同学和老师表达中心的感谢和祝愿。

2 开发环境和相关技术

2.1系统的开发环境

铁路物流数据平台的开发环境主要有:

开发框架:Springboot

技术:java

服务器:tomcat7

数据库:mysql

开发软件:Eclipse

浏览器:谷歌浏览器

2.2技术路线

2. 2. 1 Springboot 框架

本技术是Java平台的开源应用框架,其目的是简化Sping的初始搭建和开发过程。默认配置了很多框架的使用方式,自动加载Jar包,为了让读者尽可能快的跑起来spring应用程序。

SpinrgBoot的主要优点有:

  1. 为所有spring开发提供了一个更快、更广泛的入门体验;
  2. 零配置;
  3. 集成了大量常用的第三方库的配置;
  4. 提供准备好的特性。当今,Java领域的开发者机会都在使用SpinrgBoot,在开发领域逐渐成为领导者。

2.2.2 B/S架构

B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说用户端像个"瘦子",而服务器会越来越"胖"。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。

2.2.3 MySQL 介绍

在软件项目,通过经营性数据的数据库,可以保证其安全,独立和数据一致,访问数据的系统来提供,所以有效减少时间程序员开发应用程序。

MySQL可以支持多线程,可以方便使用系统的资源,提高运行的速度。并提供odbc、jdbc和tcp/ ip,以各种形式连接到MySQL; 功能方面表现欠缺,规模小,但对于这个系统就足够了。

因为MySQL是源代码对外开放的,所以任何人都可以通过相应的方法下载,并根据个性化需求进行修改。 由于MySQL的速度,可靠性和适应性,MySQL受到重视。

MySQL虽然功能可能不是很强大,但由于其开源,广泛传播,导致很多人都意识到这个数据库。

2.2.4 java语言

Java语言是一个完全的面向对象的程序设计语言。面向对象编程语言的思想是把客观存在的事物看成是具有状态和行为的一类对象,然后通过抽象的方法找出相同一类对象的共同状态和行为,从而构成模型------类。类是Java程序设计语言的核心,是Java语言的基本抽象单元。世间上的各种事物都是对象,都可以把它抽象成具有状态和行为的类。Java语言的主要特点有:

Java语言是典型的面向对象的。它提供了类,类又提供了对象的模型,通过使用继承和多态的方法,可以实现代码的重用。

Java语言是安全的。当代网络环境要解决的最大的问题就是安全问题。Java具有内部的安全措施,可以确保程序的安全与完整。

Java语言的操作无关平台。Java程序可以在任何的系统中运行,只要安装了Java的运行系统。

Java语言是多线程的。

Java语言具有内存管理。Java可以自动地对内存进行管理,很好地利用了系统的资源,减少浪费。

3系统的可行性研究及需求分析

3.1 可行性分析

可行性分析是系统开发过程中的的非常重要的一步,可行性研究是指在开发系统时,先对整体系统的所有的需求,所需要使用的技术和在开发时候需要用到的方法,以及开发所需要的的人员,资金等各方面的综合考虑之后,再对该系统是否符合实际开发的要求进行评估,满足实际要求之后再进行实际的开发工作。一般的可行性分析包括:技术可行性、经济可行性可行性等;

研究的目的就是使用最小的代价和最短的时间来确定问题是否能够完善解决。该系统的可行性分析主要包括以下几个方面的内容。

3.1.1 经济可行性分析

铁路物流数据平台,主要面向的是电脑用户,成本并不高,对于系统的维护和调试,只需要一个人就可以完成,所以在人力方面,投入的也很少。虽然说人力和资金的投入并不多,但是面临的收益是十分可观的,在21世纪,很多企业、公司等都会将管理的目标转移到线上管理,知识是无价的。在未来,很多企业投入的人力资源和资金不会太多,但却又能保证企业运转继续进行。这对整个企业的发展是非常有利的。

3.1.2 技术可行性分析

铁路物流数据平台的开发使用了比较成熟的开发的模式。使用Eclipse作为开发工具,数据库使用MySQL。以java语言为基本,使用Springboot框架搭建工程环境,结合自身的实际项目开发能力,完全可以开发出比较完善的铁路物流数据平台。

3.2 需求分析

3.2.1用户需求分析

用户根据账号登陆进入铁路物流数据平台,系统根据用户的角色展示相应的功能权限。用户进入系统后,可以查看成果信息等,并查看详情,还能查看铁路设计等。用户可以修改个人信息和密码,文档信息。

管理员拥有系统所有功能权限,可以对首页、个人中心、用户管理、文件分类管理、文档信息管理、成果分类管理、成果信息管理、铁路设计管理、数据分析管理进行相应操作。

3.2.2 功能需求分析

根据一般铁路物流数据平台的功能需求分析,本系统的功能模块如下:

(1)在个人中心,管理员可以修改自己的用户名和登录密码。

(2)在用户管理模块中,可以查看用户的信息,和进行修改、删除。

(3)在文档信息模块中,用户查看文档信息进行收藏。

(4)在首页、个人中心、用户管理、文件分类管理、文档信息管理、成果分类管理、成果信息管理、铁路设计管理、数据分析管理等模块,管理员可以对这些模块进行新增、修改、删除等操作。

3.2.3 网站性能需求分析

对网站性能进行分析,可对系统反应度、界面简洁清晰度、储存能性、易学性和稳定性进行分析;

系统反应度:同时上万人在线时反应时间应该在两三秒以内,。

界面简洁清晰:系统界面要求简单明了,操作简单,用户操作容易上手。

储存性能高:铁路物流数据平台中需要存储的信息有很多,所以对系统的存储量要求很高,因此数据库就应该很强大,才能保证信息能安全稳定的进行存储;

易学性:该系统在操作上必须简单好上手,没有很多复杂的操作,只需要简单的进行学习就能操作该系统。

稳定性:要求铁路物流数据平台运行要稳定,界面清楚、字体清晰等。

3.3系统流程的分析

由于不同的系统实际使用用户角色的不同,他们的业务分析也会变得有所不一样,为了论述方便接下来都将以管理员、用户功能权限下的系统业务流程来分析,如下图所展示:

(1)用户用例如图3-1所示:

图3-1用户用例图

  1. 管理员用例如图3-2所示:

图3-2管理员用例图

3.4 网站现状分析

系统使用用户的数量直接决定了用户信息管理者的工作量,毫无疑问,网站管理者的工作量较大较繁琐。通过前期的调研总结出网站现有的对用户管理工作状况如下分析:

(1)缺少统筹规划,如果一个网站在信息化管理中缺少综合性、系统性、整体性,那不可避免的需要投入大量人力物力来规划整理信息。引入信息化管理方式无疑可以达到节省信息管理成本的目的不仅减少资源浪费还可以使铁路物流数据信息的管理变得井井有条,成为市场竞争中的一大优势。

(2)要循序渐进,心急吃不了热豆腐,任何事情都不可能一蹴而就,就算信息管理系统也一样,要让系统发挥最大效率还是应该多调研,多听取导师或同学的意见,并进行必要的统筹规划,有组织有目的地设计系统功能,团结各个部门发挥主观能动性。

(3)信息安全措施不到位

隐私权神圣不可侵犯,这是中华人民共和国宪法赋予我们的权利,人和人都不能侵犯我们的正当权益,而网络用户信息管理存在极大安全隐患,信息泄露的案列不在少数,加强信息安全措施是完善网络信息管理过程中不可避免的一环。

(4)资源不能充分共享

资源共享是网络的一大特点,没有共享就没有社交,网络也就失去了他应有的魅力,如果能够实现用户信息共享,无疑对于铁路物流数据的发展存在不可或缺的帮助。

(5)现有系统可扩展性不高。

如今科学技术发展飞速,随着而来的就是技术更新,那势必会给软件更新带来挑战,因此,系统必须具备良好的开放性和可扩充性,为了不落后于时代,这是必备特色之一。

基于上述分析,铁路物流数据平台网站应该切合实际,做到确实有效,集体表现为:一是系统能够整理并集合归类用户信息,防止用户信息混乱,难以整理;二是系统要安全稳定,不能泄露用户信息,造成隐私泄露,不仅伤害用户利益更是对铁路公司名誉的损毁;三是系统要具有良好的开放性,不仅要方便定期的维护维修,更要方便及时增加新功能,保证先进的时代契合性。经过详细的讨论论证,确定系统的总体要求。

4系统总体设计与实现

4.1 总体设计

铁路物流数据平台采用了结构化开发的方法。这种开发方法的优点是控制性比较强,开发过程中采用了结构化和模块化的设计思想,自顶向下,从总体到部分,合理划分系统的结构和模块。结构化开发时使用模块式开发,各模块之间互不影响,方便系统的开发与管理。

本系统的设计是基于 B/S架构的三层体系结构,也就是浏览器和服务器结构。计算机技术发展的速度非常快,以前的设计结构都以C/S的模式为主,也就是用户和管理者模式。但随着网页技术的发展,越来越多的用户习惯于使用浏览器。现在的网页技术可以在浏览器中实现非常漂亮的效果,以前的单一低调的用户端页面已经无法满足用户的需求。在B/S这种结构下,技术人员可以很轻松的设计出用户所需要的工作界面,页面代码通过浏览器进行解析展示,在浏览器中不做过多的事务逻辑的处理。主要的事务逻辑放在服务端进行处理。这样用户的电脑就不会承载过多的东西,只需要浏览器展示即可。对于开发人员也很方便进行系统的维护和升级。开发人员只需要在服务端进行系统的维护就可以了。使用java这样的跨平台性非常好的技术,这样的开发模式更加的方便,高效。本系统合理的进行了模块划分和组合,因此由于各个模块之间基本上是相互独立的,所以每个模块都可以独立的被解释、执行、调试和修改,让繁琐的系统设计工作简单化。系统总体设计图如下图4-1所示:

相关推荐
IT技术分享社区17 分钟前
C#实战:使用腾讯云识别服务轻松提取火车票信息
开发语言·c#·云计算·腾讯云·共识算法
极客代码20 分钟前
【Python TensorFlow】入门到精通
开发语言·人工智能·python·深度学习·tensorflow
疯一样的码农27 分钟前
Python 正则表达式(RegEx)
开发语言·python·正则表达式
代码之光_198028 分钟前
保障性住房管理:SpringBoot技术优势分析
java·spring boot·后端
ajsbxi33 分钟前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
&岁月不待人&1 小时前
Kotlin by lazy和lateinit的使用及区别
android·开发语言·kotlin
StayInLove1 小时前
G1垃圾回收器日志详解
java·开发语言
对许1 小时前
SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“
java·log4j
无尽的大道1 小时前
Java字符串深度解析:String的实现、常量池与性能优化
java·开发语言·性能优化
爱吃生蚝的于勒1 小时前
深入学习指针(5)!!!!!!!!!!!!!!!
c语言·开发语言·数据结构·学习·计算机网络·算法