2024年4月26日发(作者:)
武 汉 纺 织 大 学
JAVA课程设计
题 目
学 院
专业班级
学生姓名
指导教师
成 绩
物流管理系统的设计与实现
数计学院
计科1022班
周珺
吴昕怡
2013年 1 月 4日
齐齐哈尔大学毕业设计(论文)
摘 要
物流信息管理系统是一个企业不可缺少的一部分,它的内容对于企业的决策者和管
理者来说都是至关重要的,因此,物流信息管理系统应该能够为用户提供充足的信息和
快捷的查询手段,但一直以来人们使用传统的人工方式管理物流,这种管理方式存在着
许多缺点,诸如效率低,保密性差等,而且将会产生大量的文件和数据,这对于查找、
更新和维护都带来了不少的困难。企业信息管理通常比较复杂,由于各类信息繁多难以
集中,利用计算机支持企业高效率完成企业信息管理,是适应现代企业制度要求,推动
企业信息管理走向科学化、社会化、规范化和自动化,从而提高企业信息管理效率。
本文首先介绍了以JAVA语言实现的运通物流管理系统的开发过程,以及开发中所
用到的技术,并对系统进行了分析设计,最后通过相应的开发平台进行实现。该系统达
到了数据的一致性和安全性,应用程序功能完备,符合了物流信息管理系统作为典型的
信息管理系统的要求。用户可以对物流信息进行新增、查询、修改以及数据分析统计等
操作,为了达到企业内部的要求,本系统也对人事信息和客户信息进行了管理,使物流
信息系统更加完善。
关键词: 物流;信息管理;JAVA
I
齐齐哈尔大学毕业设计(论文)
Abstract
Logistics information management system is an integral part of an enterprise. Its content
for business decision makers and managers, are crucial, therefore, logistics information
management system should be able to provide sufficient information and efficient query
means. But it has been the use of traditional manual management of logistics, such
management, there are many shortcomings, such as low efficiency, poor confidentiality, and
over time, will produce a large number of documents and data, for search, update and
maintain all brought many difficulties. Enterprise information management is often complex
and difficult to concentrate as many types of information, efficient use of computer support
companies to complete enterprise information management, is to adapt to the modern
enterprise system, enterprise information management to promote scientific, social,
standardization and automation to enhance enterprise information management efficiency.
This paper introduces the operation of the JAVA language through the development
process of the logistics management system, design and system analysis, and finally through
the appropriate platform for implementation. The system has reached the consistency and
security of data, application functions, in line with the logistics information management
system as a typical management information systems. Logistics information for the user can
add, query, modify, and data analysis, statistics, etc, in order to achieve the requirements of
the enterprise, the system also on the personnel information and customer information to the
management, logistics information management more perfect.
Key words :
Logistics; Information management;JAVA
II
齐齐哈尔大学毕业设计(论文)
目 录
摘要
..................................................................................................................................................I
Abstract
....................................................................................................................................... II
第1章 绪论
............................................................................................................................. 1
1.1 选题依据和意义
....................................................................................................... 1
1.2 本课题在国内外的研究现状
................................................................................ 1
1.3 课题研究的内容及拟采取的方法
....................................................................... 2
第2章 系统开发模式、工具及环境
................................................................................ 3
2.1 系统开发模式
........................................................................................................... 3
2.2 系统开发环境的选择
.............................................................................................. 3
2.3 系统运行环境的选择
.............................................................................................. 3
2.4 系统实现过程中技术的选择
................................................................................ 3
第3章 需求分析—软件需求规格说明书
....................................................................... 4
3.1 引言
............................................................................................................................. 4
3.2 背景
............................................................................................................................. 4
3.3 任务概述
.................................................................................................................... 5
3.3.1 目标
..................................................................................................................... 5
3.3.2 用户的特点
....................................................................................................... 5
3.4 需求规定
.................................................................................................................... 5
3.4.1 对性能的规定
................................................................................................... 6
3.4.2 系统用例图
....................................................................................................... 6
3.5 运行环境规定
........................................................................................................... 9
第4章 系统总体设计
......................................................................................................... 10
4.1 设计目的
.................................................................................................................. 10
4.2 系统模块结构设计
: ............................................................................................... 10
4.3 系统功能结构描述
................................................................................................ 11
4.4 系统功能机构图
..................................................................................................... 11
第5章 系统的数据库设计
................................................................................................ 14
5.1 数据库的概念
......................................................................................................... 14
5.2 数据库的选择
......................................................................................................... 14
5.3 数据库设计
.............................................................................................................. 14
第6章 系统开发技术介绍
................................................................................................ 22
6.1 JAVA开发语言的选择
.......................................................................................... 22
6.2 MVC设计模式描述
................................................................................................. 24
III
齐齐哈尔大学毕业设计(论文)
6.3 Struts2,Hibernate技术描述
........................................................................ 25
6.3.1 Struts2描述
.................................................................................................. 25
6.3.2 Hibernate描述
............................................................................................. 27
6.4 SQL语言描述
.......................................................................................................... 27
第7章 系统的详细设计与实现
....................................................................................... 28
7.1 架构Struts2框架和描述
.................................................................................. 28
7.2 架构Hibernate框架和描述
.............................................................................. 29
7.3 系统功能的实现
..................................................................................................... 30
7.3.1 系统的登录功能实现
................................................................................... 31
7.3.2 运通物流系统首页面设计
.......................................................................... 31
7.3.3 人事管理模块实现
........................................................................................ 32
7.3.4 货物信息管理实现
........................................................................................ 35
7.3.5 车辆信息管理实现
........................................................................................ 40
7.3.6 订单信息查询
................................................................................................. 46
7.3.7 费用统计
......................................................................................................... 48
结论
............................................................................................................................................... 49
参考文献
...................................................................................................................................... 50
致谢
............................................................................................................................................... 51
IV
齐齐哈尔大学毕业设计(论文)
第1章 绪 论
1.1 选题依据和意义
此次毕业设计的选题主要来源于对齐齐哈尔市周边中小型物流公司和超市走访,了
解到仍然有很多中小企业和超市对物流管理方面仍然处于纸和笔的操作。因此,在种种
因素的影响下,使其部分物流管理仍然处于业务处理繁琐,工作效率低下的状态。为了
达到信息化仓储、运输、车辆调度等管理,基于java的物流管理系统能够解决这一问
题,并实现人机结合的方式,这也将是现代工作方式的主流。
管理信息系统作为各项技术、业务、高水平管理及工作自动化的方法和式,正在广
泛应用,它是为了实现系统的硬件、系统软件、应用软件及数据的共享,已经成为越来
越破切的任务。
人们生活工作与通信,目前都与信息的日益紧密,但很多的国内企业的仓库作业没
有达到信息化,因此为实现信息数字化,开发中小型物流管理系统正是实现利用现有的
信息基础设施,重点开发和推广应用于各类科技经济等数据库和网络资源服务系统,以
便取得更大的社会效益有着总要的意义和价值。
1.2 本课题在国内外的研究现状
中国物流业近几年才开始起步,并进入发展期。由于我国计算机软件技术的发展迅
速,也同时也解决了国内很多生产和管理技术的提升。因此,多数软件公司都以应用软
件开发为主,实现办公自动化软件的推广和应用。多数以中小型企业管理软件为主,不
论是制造还是运输、销售、仓储等方面都离不开计算机软件的管理。目前国内的物流管
理系统都是根据公司规模的差距使物流管理系统的管理的内容也不尽相同,但是主要目
的都是要以计算机为载体来解决当前庞大的数国外物流的发展不仅与社会经济和生产
力的发展水平有关,同时也与科学技术发展的水平有关。国外的物流管理系统, 随着
新经济和现代信息技术的迅还发展,不论是物流管理软件系统的开发,还是其他应用型
软件开发,在实现的功能上都达到了很高的水平。
1.3 课题研究的内容及拟采取的方法
研究内容及方法:物流管理系统包含的内容非常的广泛,但是对于不同的公司对软
件功能的需求有所不同,所以我们对物流管理系统的功能模块的构思和设计也有所不
1
齐齐哈尔大学毕业设计(论文)
同。主要运用Java web应用技术来实现该系统的功能,通过动态页面jsp来实现页面
的显示和验证,应用Hibernate框架和Struts2框架来封装从而实现与数据库的交互和
页面跳转达到了快速的软件开发。
2
齐齐哈尔大学毕业设计(论文)
第2章 系统开发模式、工具及环境
2.1 系统开发模式
在软件系统开发模式中,一般采用mvc模式,即视图层,逻辑层和控制层,但是在
项目开发中,目前已经不局限于这种模式。 对于本系统的开发模式,我此次采用的是
重新构建MVC架构:
1.系统开发模式主要分五层:JSP(HTML)视图层
[13]
、Struts2(使用它对动作Action
的跳转进行管理)控制层、具体的业务逻辑(javaBean)、数据持久层(DAO,基于Hibernate
的DAO)、service层(该层用来负责为模式层提供对应的DAO的接口,而不是直接在模
式层中进行调用,降低对数据持久层的依赖度)。
2.service层的介绍:本次应用service层,主要是对数据持久层进行再次的封装,
使得上层的操作不用理解底层的具体使用,只需要通过service提供相应的接口方法即
可。这种做法降低了各层之间的耦合度。
2.2 系统开发环境的选择
本次系统的开发环境我选择MyEclipse 7.0 软件作为编写程序的软件。该软件广泛
应用于软件开发行业。由于版本的问题,MyEclipse6.0以下版本不支持Hibernate框架,
所以我此次选择7.0版本。
MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称
MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、
发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的
JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,
Struts, JSP, CSS, Javascript, SQL, Hibernate。
2.3 系统运行环境的选择
系统运行环境,运通物流管理系统是基于Java Web 应用的系统软件,那么它就离
不开服务器对它的支持,所以在服务器上我选择tomcat6.0版本,在对Java代码的编译
上,本系统应用的是Sun公司出品的Jdk6.0版本。
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的
3
齐齐哈尔大学毕业设计(论文)
一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的
参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持
最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因
而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web
应用服务器。目前最新版本是6.0。
2.4 系统实现过程中技术的选择
目前软件开发都是基于框架开发的,目的是为了达到开发的快捷性,所以本次对运
通物流管理系统的开发上,我也运用了这样的开发手段。
应用的技术简介:在当今企业级的开发环境之下处理面向对象与关系数据库的转化
是非常繁琐也相当费时的。
1.Hibernate是适合与处理对象关系映射的一个工具。Hibernate
[2]
是「对象/关系对
应」(Object/Relational Mapping)的解决方案,简写为ORM,简单的说就是将 Java 中
的对象与对象关系,映像至关系型数据库中的表格与表格之间的关系,ORM这个术语
指代一种映射数据的技术,它能够通过基于SQL的语法映射对象模型的数据到关系模
型数据。这样就简化了对数据库的操作。
2.struts2框架:Struts是一个MVC框架(Framework),用于快速开发Java Web应
用。
对于这两种技术,主要对项目的类,和方法,对象进行封装,因为在Java编程中,
时刻都要将“封装”考虑在项目开发的整个过程中。这也降低了系统模块与模块,类与
类之间的耦合度,使系统的结构更稳定。
4
齐齐哈尔大学毕业设计(论文)
第3章 需求分析—软件需求规格说明书
3.1 引言
需求分析是软件开发的重要组成部分,需求分析是用户对软件功能需求的描述,通
过详细了解用户对软件功能的要求从而达到软件需求面向用户的目的。该软件需求规格
说明书正是对用户需求做的详细分析的文档。以便作为程序员今后编写该软件时进行参
考。
3.2 背景
编写背景:因对该运通管理系统的功能进行用户需求分析,从而编写该文档,该文
档是对运通管理系统的功能进行描述和可行性分析,达到正确的功能描述的目的。
3.3 任务概述
3.3.1 目标
通过对运通管理系统用户的功能需求,编写需求文档,来记录分析该系统的具体功
能和逻辑。 从而达到实现系统登录,入库管理,出入管理,库存管理,人事管理,以
及车辆调度管理等模块的实现。为今后编写该软件程序做准备。
运通管理系统,主要是为了方便对物流过程中对货物流通进行科学化管理,方便管
理过程中的繁琐过程,提高物流管理的效率,通过客户的订单的生成,其他的一系列任
务直接由操作员在电脑前完成所有繁琐操作。
3.3.2 用户的特点
该系统是对企业内部人员使用的应用软件,它是基于web应用的,因此面向的用户
是企业内部人员。 具备基础的计算机知识的人即可对本系统进行操作。
该系统包含了对企业内部的人事管理、客户信息管理、车辆调度和货物出入库信息
管理、以及对货物状态的全程监管。确保了货物的流通状态的管理的顺畅。
3.4 需求规定
能够完全实现对公司产品流通过程中所有业务的包含,实现综合的管理和简单的操
作即可,使操作简单化,可视化。在对系统要求方面要达到系统的稳定性。
5
齐齐哈尔大学毕业设计(论文)
3.4.1 对性能的规定
对系统的时间性要求:要求系统能够有快捷的操作响应。对系统编写代码是,优化
系统结构和层次,达到提高系统性能的可操作性,提高系统效率。
对精度要求:对数据库信息的存储,减少对数据库信息的冗余。减少页面缓存。
3.4.2 系统用例图
系统用例图(Use Case Diagram)是在软件需求分析到最终实现的第一步,也是软件
开发中重要的组成部分。
用例图定义:由参与者(Actor)、用例(Use Case)以及它们之间的关系构
成的用于描述系统功能的动态视图称为用例图。
用例图(User Case)是被称为参与者的外部用户所能观察到的系统功能的模
型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、
子系统或类的功能行为进行建模。
用例图展示了用例之间以及同用例参与者之间是怎样相互联系的。用例图用
于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,
并使开发者能够实现这些元素。
以下是系统的用例图,使用用例图主要原因是它具有三个主要的作用:(1)获取
需求;(2)指导测试;(3)还可在整个过程中的其它工作流起到指导作用。
1.登录模块用例图:
图3-1登录模块用例图
图3-1登陆了模块用例图:主要来描述系统的操作人员通过访问主页面来登录本系
6
齐齐哈尔大学毕业设计(论文)
统。此图也描述了系统的整个功能组成部分。
2.人事管理模块用例图:
图3-2人事管理模块用例图
图3-2人事管理模块用例图: 此图描述的是系统人事管理模块下的子系统的功能
描述。通过访问系统的人事管理功能模块,来进行对员工信息管理,对客户信息管理。
从而对员工信息和客户信息进行操作。
3.货物信息管理用例图:
图3-3货物信息管理模块用例图:此图是对货物信息管理模块的用例进行描述,该
模块主要包含货物出库,货物入库和盘点三个功能点,此图详细的描述了该系统货物信
息管理中子系统的关系和功能点。
7
齐齐哈尔大学毕业设计(论文)
更信出库信息
更新入库信息
查看在途货物信息
货物入库
删除已处理订单
货物出库
货物信息管理模块
修改货物信息
运通系统用户
货物基本信息查询
查询在库货物信息
生成客户订单
库存盘点
显示货物信息
修改错误的订单
图3-3货物信息管理模块用例图
4.车辆信息管理用例图:
图3-4车辆信息管理模块用例图
8
备份记录
齐齐哈尔大学毕业设计(论文)
图3-4车辆信息管理模块图:主要为客户描述车辆信息模块下的铁运、汽运、空运
以及对车辆分配的功能描述。
5.货物信息查询模块用例图:
图3-5货物基本信息查询管理模块用例图
图3-5货物基本信息查询管理模块用例图:用于描述用户对货物信息的查询操作描
述。
6.盘点信息模块用例图:
图3-6盘点信息管理模块用例图
图3-6盘点信息管理模块用例图:主要描述盘点库存功能用例内容,来对其子系统
的概要描述。此模块包含对货物信息的费用计算。
3.5 运行环境规定
要对Windows XP 或Windows 7 系统兼容。系统必须具备安装Oracle10g和
Tomcat6.0 的基本硬件要求。
9
齐齐哈尔大学毕业设计(论文)
第4章 系统总体设计
4.1 设计目的
系统设计又称为物理设计,是开发管理信息系统的第二阶段,本章是总体设计,其
任务是设计系统的框架和概貌,此阶段是开发人员进行的工作,他们将系统设计阶段得
到的目标系统的逻辑模型转换为目标系统的物理模型,该阶段得到工作成果――系统总
体设计是下一个阶段系统实施的工作依据。
4.2 系统模块结构设计
图4-1是系统模块结构图,主要描述对此系统的功能结构的总体描述。该系统包含
登录模块,人事管理模块,货物信息管理模块,车辆信息管理模块,货物信息查询以及
费用统计等。此图采用Microsoft Office Visio 2003软件来生成的。 它详细的描述
了本系统中各个模块的应用功能内容。
轻
舟
装
饰
BSS
轻舟装
饰客户
管理系
统
龙发
装饰
报价
系统
东易
日盛
客服
系统
龙发装
饰仓库
管理系
统
业
务
系
统
决策
支持
系统
。
。
。
BtoB电子商务
SaaS运营平台
供求信息发布
电子订单
电子支付
物流
企业用户管理系统定制
系统后台支持
BtoC电子商务
家装门户
网上建材商城
基础服务平台
家装知识库
论坛
中
心
数
据
库
支撑数据库主数据库甲企业库已企业库
图 4-1 系统模块结构图
10
齐齐哈尔大学毕业设计(论文)
4.3 系统功能结构描述
1.用户登录模块:实现用户登录后可对用户名和密码进行修改。并要求用户的验证
在数据库后台进行验证,不是前台页面中对用户名和密码进行检验。为了达到安全性,
系统登陆后不能再通过web浏览器的后退按键会退到此登陆页面。
2.人事管理模块:任何操作都离不开人员,因此对人员管理方面要实现对员工的
信息的添加和更新删除等操作。另一方面是对客户信息的管理,也要具有查询和修改的
功能。
3.货物信息模块: 要对货物入库和出库进行管理,对已经处理完的内容进行删
除,并存入其他表中,达到数据有据可寻的目的。 另一点是对库存的信息进行定期盘
点。对在途货物信息进行监控。
4.对公司运输车辆进行管理:主要是对车辆的调度,都要具备增加和更新的功能。
对订单中采用车辆运输的部分,进行车辆分配。
5.对本系统基本信息的综合查询功能:按照订单查询,按车牌号查询车辆,按日
期查询盘点内容等。
4.4 系统功能流程图
该图主要是对系统的功能流程的描述:当系统的客户有货物运输需求时,系统的管
理员会对客户的需求进行分析,从而对客户的信息进行编辑。首先生成客户订单,客户
订单中主要包含了客户的基本信息,比如客户的编号、客户的所属公司、客户的公司的
所在地以及客户的联系方式等。
当客户订单生成后,会对客户的收货人进行添加。客户的收货人主要是对货物到达
目的地后接受货物的人员的信息进行管理。主要包含联系人的姓名、地址、电话、以及
Email等信息。
客户订单以及客户的联系人已经产生,那么此时就要对订单详细进行编辑,客户订
单详细主要是对运输的货物进行详细的描述,包含数量,类别,货物名,货物条形码,
以及货物的颜色,体积等内容。 它是对货物的信息的一个详细的描述,为系统管理员
提供货物的详细信息作依据。
此时是货物的入库操作,当货物到达仓库后,要对货物进行货物入库操作,此时要
记录货物是属于哪个订单货物,此时管理员要对其进行记录。 当货物入库后,系统操
作员可以查看在库货物的信息。
当货物出库时,要记录出库货物是属于哪个订单的,同时要分配出库货物订单运输
方式,管理员根据货物订单要求的运输方式分配相对应的运输方式。此操作包含汽运,
铁运以及空运等方式,每次分配操作时,同时记录一条数据,使此数据和订单一一对应。
11
齐齐哈尔大学毕业设计(论文)
当货物出库分配运输方式后一律可以看做是“在途”状态。
生成客户订单货物入库
生成客户信息
客户需求
生成订单详细信息
分析
货物出库
铁运
生成收货人信息
系统用户
分配运输方式空运
车辆信息
根据车辆信息分配车辆
汽运
货物管理
订单管理
图4-2 系统功能流程图
分配运输方式时,铁运信息根据铁路运输的车次进行分配,空运按照不同时间的航
12
齐齐哈尔大学毕业设计(论文)
班进行分配,汽运管理信息是按照本公司内部的车辆进行有序化管理的。汽运管理分配
的就是本公司内部的车辆,不同车辆的详细信息可以通过系统来管理。
在货物到达目的地时,收货人确认收货后,操作员改变货物“在途”状态,其订单
上由操作员编辑货物是“否到达目的地”一项来标注货物订单。此时货物的订单就已经
处理完毕。
13
齐齐哈尔大学毕业设计(论文)
第5章 系统的数据库设计
5.1 数据库的概念
当人么从不同角度描述数据库的概念是,往往会有不同的概念。例如,有人称数据
库是一个“记录保存系统”(该定义强调了数据库是若干记录的集合)。又比如说数据库
是“人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的集合”(该
定义侧重于数据的组织)。也有人将数据库当做是“一个数据仓库”。当然,这些描述
都很形象,但是并不是那么严谨。严格地说,数据库是“按照数据结构来组织、存储和
管理数据的仓库”。
本系统将使用一直以来使用都最为广泛的关系模型作为数据库的建设依据。在用户
的观点下,关系模型中数据的逻辑结构是一张二维表,一个关系对应通常说的一张表,
并且关系的每一个分量必须是一个不可分的数据项。而一个基于关系模型的数据库则是
由若干个二维表组成的。对于一些大型和中型的数据库,如Oracle,SQL Server 2000/7.0
等都属于关系型数据库,同时它们所带有的数据库管理工具是其他小型数据库所没有
的,而同时这些工具又为管理员的工作节省了很多的时间和财力。
5.2 数据库的选择
在选择数据库上,我选择目前市场上占有率最大的Oracle数据库,这次我应用的
是Oracle 10g. 我们以前使用数据库连接,都是使用单联接(或单例模式),但是在大
并发量出现的时候,总有可能会达到数据库连接数的上限。那么应用数据池(DATA POOL)
可以解决系统因访问量过多而崩溃的问题。但是使用了数据池并不是为了解决连接数据
库速度的问题,而是为了实现数据连接的稳定性和提高并发的能力。但是由于此系统是
用于企业内部的,访问量的并发性要求不高,因此此系统部分内容采用数据库的单链接。
5.3
数据库设计
概念模型是对信息世界建模,其表示方法有很多,其中最为常用的是实体-联系模
型,即E-R模型,它是用E-R图来描述现实世界的概念模型。E-R图中用矩形表示实
体;用菱形表示联系。如图:5-1系统E-R图。
14
齐齐哈尔大学毕业设计(论文)
图5-1 系统E-R图
该图只是描述了系统的实体与实体之间的关系,并没有添加实体的属性内容。由图
可知,系统的管理员对系统员工信息、货物入库出库信息、车辆信息、以及货物订单和
客户信息都是一对多的关系。
Office Visio 2003 或者Office Visio2010 是一种便于 IT 和商务专业人员就复
杂信息、系统和流程进行可视化处理、分析和交流的构图软件。因此这里用了此软件来
画各种流程图,而不是用Microsoft Word2003或者是Microsoft Word2007,因为这会
使开发更加的快捷,而不至于因构图而浪费时间。为了清楚简便的描述出实体与其性之
间的关系,用Microsoft Office Visio 2003软件生成了一张包含实体属性的完E-R
图,见图5-2和图5-3。
15
齐齐哈尔大学毕业设计(论文)
ytrenshi
PK
ytrenshi_worknum
ytrenshi_name
ytrenshi_sex
ytrenshi_chusheng
ytrenshi_cardno
ytrenshi_address
ytrenshi_tel
tyrenshi_bumennum
ytbumen
PK
khdingdan
PK
khdingdan_dnum
khdingdan_knum
khdingdan_ystype
khdingdan_fh
khdingdan_shrnum
khdingdan_ftime
khdingdan_dtime
khdingdan_stime
hkdingdan_type
hkdingdan_czyuan
hkdingdan_czadd
khdingdan_beizhu
PK
shouhren
shouhren_num
shouhren_gongsi
shouhren_name
shouhren_address
shouhren_tel
shouhren_email
shouhren_ding
shouhren_type
shouhren_beizhu
outputimage
PK
ddxiangxi
PK
dd_id
dd_ddnum
dd_cpnum
dd_cptm
dd_cpleibie
dd_cpname
dd_cpyanse
dd_cptiji
dd_cpshuliang
dd_cpdanwei
dd_xianghao
dd_ysfangshi
dd_ysbianhao
dd_beizhu
output_num
output_ddnum
output_cpleibie
output_cpname
output_suoshu
output_cpnum
output_cptiao
output_cpxianghao
output_yckshuliang
output_shijichuku
output_danwei
output_outtime
output_outtype
output_outtype
output_mddtype
output_beizhu
ytbumen_num
ytbumen_name
kucunxinxi
PK
PK
kucun_num
kucun_ddnum
kucun_leibie
kucun_cpname
kucun_suoshu
kucun_cpnum
kucun_tiaoxing
kucun_xianghao
kucun_cpshuliang
kucun_rukushu
kucun_danwei
kucun_rktime
kucun_ckshu
kucun_beizhu
inputimage
PK
input_num
input_ddnum
input_cpleibie
input_cpname
input_suoshu
input_cpnum
input_cpxianghao
input_cpshuliang
input_shijiruku
input_danwei
input_rutime
input_rutype
input_beizhu
ytclient
PK
ytclient_num
ytclient_gsname
ytclient_gsadd
ytclient_per
ytclient_tel
ytclient_email
ytclient_dingnum
ytclient_beizhu
kulishi
PK
kulishi_rnum
kulishi_dnum
kulishi_cpleibie
kulishi_cpname
kulishi_suoshu
kulishi_cpnum
kulishi_cptiao
kulishi_cpxiang
kulishi_cpshu
kulishi_rkshu
kulishi_danwei
kulishi_rutime
kulishi_chutime
kulishi_beizhu
zaitu
PK
zaitu_id
zaitu_chunum
zaitu_dingnum
zaitu_beizhu
图 5-2 系统表的完整关系模型
16
齐齐哈尔大学毕业设计(论文)
ddxiangxi1
PKdd_id
dd_ddnum
dd_cpnum
dd_cptm
dd_cpleibie
dd_cpname
dd_cpyanse
dd_cptiji
dd_cpshuliang
dd_cpdanwei
dd_xianghao
dd_ysfangshi
dd_ysbianhao
dd_beizhu
check
PKcheck_id
check_ddnum
check_yunfei
check_cunfei
check_banfei
check_zonge
check_time
check_beizhu
kongyun
PKkongyun_id
qiyun
PKqiyun_id
qiyun_ddnum
qiyun_chenum
qiyun_zhongzhuan
qiyun_ctime
qiyun_dtime
qiyun_siji
qiyun_peiyuan
qiyun_beizhu
kongyun_ddnum
kongyun_banci
kongyun_zhongzhuan
kongyun_qtime
kongyun_dtime
kongyun_tidan
kongyun_peiyuan
kongyun_beizhu
tieyun
PKtieyun_id
tieyun_ddnum
tieyun_checi
tieyun_zhongzhuan
tieyun_ctime
tieyun_dtime
tieyun_peiyuan
tieyun_beizhu
ytrenshi
PKytrenshi_worknum
ytrenshi_name
ytrenshi_sex
ytrenshi_chusheng
ytrenshi_cardno
ytrenshi_address
ytrenshi_tel
tyrenshi_bumennum
cheliang
PKcheliang_num
cheliang_zai
cheliang_long
cheliang_w
cheliang_h
cheliang_siji
cheliang_gongnum
cheliang_type
图 5-3 系统表的完整关系模型
以上两个图 5-2和图5-3描述了运通物流管理系统的表与表之间的字段的关系,它
更鲜明的显示了表结构的关系。例如:系统的人事表 ytrenshi 与车辆信息表
chenliang 对应的主外键关系一目了然,cheliang表中主键是cheliang_num 外键是
cheliang_siji (员工编号),对应ytrenshi表中的主键ytrenshi_worknum 关系。
17
齐齐哈尔大学毕业设计(论文)
系统表的建立:
表5-1 用户表 ytuser
字段描述
编号
用户名
用户密码
字段名
ytuser_id
ytuser_name
ytuser_pwd
数据类型
varchar2(10)
varchar2(30)
varchar2(30)
是否为空
notnull
notnull
notnull
主
键
PK
表5-1 用户表中主键是用户编号,其中用户名唯一,不能为空,用户密码不能为
空,其中用户名和用户密码是用户进入系统的为一标识。
表5-2人事表 ytrenshi
字段描述
工作证号
姓名
性别
出生年月
身份证号
居住地址
联系电话
部门编号
字段名
ytrenshi_worknum
ytrenshi_name
ytrenshi_sex
ytrenshi_chusheng
ytrenshi_cardno
ytrenshi_address
ytrenshi_tel
tyrenshi_bumennum
数据类型
varchar2(30)
varchar2(30)
varchar2(30)
varchar2(50)
varchar2(30)
varchar2(50)
varchar2(20)
varchar2(30)
是否为空
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
FK
表5-2是系统的人事表信息,它存储了该系统的使用的公司的整体员工信息。 其
中员工的工作证号是主键,它存储了员工的姓名、性别、出生年月、省份证号、居住
地址、联系方式、部门编号等信息,其中部门编号是外键。由于任何一个系统或者一
个企业都离不开人员,因此此处设计一个对企业内部人员信息的表,其中部门编号标
识了员工所在的部门,部门编号是部门表的主键,那么此处可以通过部门编号来查询
部门信息。从而查看员工所在的部门信息。
表5-3用户部门表 ytbumem
字段描述 字段名 数据类型 是否为空 主
键
PK 部门编号 ytbumen_num varchar2(30) notnull
部门名称 ytbumen_name varchar2(30) notnull
表5-3用户部门表 主要由部门编号和部门名称组成,其中部门编号是主键。它
存储了部门信息的详细内容。
表5-4客户信息表 ytclient
18
齐齐哈尔大学毕业设计(论文)
字段描述
客户编号
公司名称
公司所在地址
联系人姓名
联系电话
订单号
备注
字段名
ytclient_num
ytclient_gsname
ytclient_gsadd
ytclient_per
ytclient_tel
ytclient_email
ytclient_dingnum
ytclient_beizhu
数据类型
varchar2(30)
varchar2(30)
varchar2(50)
varchar2(30)
varchar2(20)
varchar2(30)
varchar2(50)
varchar2(100)
是否为空
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
表5-4客户信息表主要存储客户的基本信息,主要由客户编号、公司名称、公司
所在地址、联系人姓名、联系电话、Email和订单号、备注组成。它主要是存储客户
的基本信息。
表5-5收货人信息表 shouhren
字段描述
编号
收获公司
收货人
所在地
联系电话
订单号
收获状态
备注
字段名
shouhren_num
shouhren_gongsi
shouhren_name
shouhren_address
shouhren_tel
shouhren_email
shouhren_ding
shouhren_type
shouhren_beizhu
数据类型
varchar2(30)
varchar2(30)
varchar2(30)
varchar2(50)
varchar2(30)
varchar2(50)
varchar2(50)
varchar2(10)
varchar2(100)
是否为空
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
表5-5收货人信息表,主要存储收货人的基本信息。 其中主键是收货人编号。
表5-6 客户订单表 khdingdan
字段描述
客户编号
订单编号
运输方式
发货目的地
收获人编号
预发时间
遇到达时间
订单生成时间
字段名
khdingdan_knum
khdingdan_dnum
khdingdan_ystype
khdingdan_fh
khdingdan_shrnum
khdingdan_ftime
khdingdan_dtime
khdingdan_stime
数据类型
varchar2(50)
varchar2(50)
varchar2(30)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
是否为空
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
19
齐齐哈尔大学毕业设计(论文)
是否已经发货
操作员姓名
操作员人所在地
备注
hkdingdan_type
hkdingdan_czyuan
hkdingdan_czadd
khdingdan_beizhu
varchar2(10)
varchar2(30)
varchar2(50)
varchar2(100)
notnull
notnull
notnull
表5-6客户订单表主要描述的是客户编号、客户发货时间、到达时间等基本信息,
为订单详细信息提供客户的基本信息作简单描述和存储。
表5-7订单详细表 ddxiangxi
字段描述
订单序号
订单编号
产品编号
产品条形码
产品类别
产品名称
产品颜色
产品体积
产品数量
单位
产品箱号
运输方式
运输编号
备注
字段名
dd_id
dd_ddnum
dd_cpnum
dd_cptm
dd_cpleibie
dd_cpname
dd_cpyanse
dd_cptiji
dd_cpshuliang
dd_cpdanwei
dd_xianghao
dd_ysfangshi
dd_ysbianhao
dd_beizhu
数据类型
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(30)
varchar2(20)
varchar2(50)
varchar2(20)
varchar2(50)
varchar2(100)
是否为空
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
表5-7订单详细表,主要存储订单的详细信息,它主要是对货物信息的描述。通
过客户订单的订单编号可以查找到详细的订单内容。也就是这个表的内
表5-8入库信息表 Inputimage
字段描述
入库编号
订单号
产品类别
产品名称
产品所属公司
产品编码
产品箱号
产品总数量
实际入库数量
单位
字段名
input_num
input_ddnum
input_cpleibie
input_cpname
input_suoshu
input_cpnum
input_cpxianghao
input_cpshuliang
input_shijiruku
input_danwei
数据类型
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(10)
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
20
齐齐哈尔大学毕业设计(论文)
入库时间
入库是否已完成
备注
input_rutime
input_rutype
input_beizhu
varchar2(50)
varchar2(10)
varchar2(50)
notnull
notnull
表5-8入库信息表主要存储已经入库的货物信息,也就是货物信息的详细记录。
其中主键是入库编号。由系统自动生成。
表5-9 出库信息表 outputimage
字段描述
出库编号
订单号
产品类别
产品名称
产品所属公司
产品编号
产品条形码
产品箱号
应出库总数量
实际出库数量
单位
出库时间
是否已完全出库
是否已到达目的地
备注
字段名
output_num
output_ddnum
output_cpleibie
output_cpname
output_suoshu
output_cpnum
output_cptiao
output_cpxianghao
output_yckshuliang
output_shijichuku
output_danwei
output_outtime
output_outtype
output_mddtype
output_beizhu
数据类型
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(30)
varchar2(30)
varchar2(10)
varchar2(50)
varchar2(10)
varchar2(10)
varchar2(100)
是否为空
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
表5-9出库信息表,主要存储出库信息记录。标识货物的状态,是否已经完成出
库货物的操作。
表5-10库存信息表 Kucunxinxi
字段描述
入库编号
订单号
产品类别
产品名称
产品所属公司
产品编号
产品条形码
产品箱号
产品数量
字段名
kucun_num
kucun_ddnum
kucun_leibie
kucun_cpname
kucun_suoshu
kucun_cpnum
kucun_tiaoxing
kucun_xianghao
kucun_cpshuliang
数据类型
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(50)
varchar2(30)
varchar2(30)
是否为空
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
notnull
主
键
PK
21
齐齐哈尔大学毕业设计(论文)
实际入库数量
单位
入库时间
出库数量
备注
kucun_rukushu
kucun_danwei
kucun_rktime
kucun_ckshu
kucun_beizhu
varchar2(30)
varchar2(10)
varchar2(50)
varchar2(30)
varchar2(100)
notnull
notnull
notnull
notnull
表5-10库存信息表主要存储已经入库的信息。在这里它是辅助入库信息的记录的,
为了达到便于用户查询的目的建立的一张信息表。
22
齐齐哈尔大学毕业设计(论文)
第6章 系统开发技术介绍
6.1 JAVA开发语言的选择
现在,市场上可以选购的应用开发产品很多,流行的也有数十种。目前在我国市场
上最为流行,使用最多,最为先进的可用作企业级开发语言的产品有:
SUN公司的Java
Microsoft公司的Visual Basic
Microsoft公司的Visual C
Borland公司的Delphi
Powersoft公司的PowerBulider
在目前市场上这些众多的程序开发工具中,有些强调语言的弹性与执行效率;有些
偏重于可视化程序开发工具所带来的便利性与效率的提高,各有各的优点和特色,也满
足了不同用户的不同需求。我的网站选择Java语言开发,其原因基于以下几点:
Java是一种简单的、面向对象的、分布式的、健壮的、安全的、结构中立的、可移
植的、性能很优异的
[12]
、多线程的、动态的语言。
1. 简单
Java的风格类似于C++,并且摒弃了C++中容易引发程序错误的地方,如指针和内
存管理。 此外Java提供了丰富的类库。
2. 面向对象
面向对象可以说是Java最重要的特性。Java语言的设计完全是面向对象的。Java
支持静态和动态风格的代码继承及重用。
3. 分布式
[14]
Java包括一个支持HTTP和FTP等基于TCP/IP协议的子库。因此,Java应用程序
可凭借URL打开并访问网络上的对象,其访问方式与访问本地文件系统几乎完全相同。
4. 健壮
Java致力于检查程序在编译和运行时的错误。Java自己操纵内存减少了内存出错
的可能性。Java提供Null指针检测数组边界、检测异常出口、字节代码校验。
5. 安全
Java的安全性可从两个方面得到保证。一方面,在Java语言里,像指针和释放内
存等C++功能被删除,避免了非法内存操作。另一方面,当Java用来创建浏览器时,语
言功能和浏览器本身提供的功能结合起来,使它更安全。
23
齐齐哈尔大学毕业设计(论文)
6.结构中立
为了建立Java作为网络的一个整体,Java将它的程序编译成一种结构中立的中间
文件格式。只要有Java运行系统的机器都能执行这种中间代码。Java源程序被编译成
一种高层次的与机器无关的byte-code格式语言,这种语言被设计在虚拟机上运行,由
机器相关的运行调试器实现执行。
7. 可移植的
Java的可移植性一直是Java程序设计师们的精神指标,也是Java之所以能够受到
程序设计师们喜爱的原因之一,最大的功臣就是JVM的技术。JAVA编译器产生的目标代
码(J-Code) 是针对一种并不存在的CPU--JAVA虚拟机(JAVA Virtual Machine),而不
是某一实际的CPU。JAVA虚拟机能掩盖不同CPU之间的差别,使J-Code能运行于任何
具有JAVA虚拟机的机器上。
8. 高性能
Java可以在运行时直接将目标代码翻译成机器指令。Sun用直接解释器一秒钟内可
调用300,000个过程。翻译目标代码的速度与C/C++的性能没什么区别。
9. 多线程
[16]
Java支持多线程,多线程功能使得在一个程序里可同时执行多个小任务。线程,有
时也称小进程,是一个大进程里分出来的小的独立的进程。
10. 动态
Java的动态特性是其面向对象设计方法的发展。它允许程序动态地装入运行过程中
所需要的类,这是C++语言进行面向对象程序设计所无法实现的。Java编译器不是将对
实例变量和成员函数的引用编译为数值引用,而是将符号引用信息在字节码中保存下传
递给解释器,再由解释器在完成动态连接类后,将符号引用信息转换为数值偏移量。
6.2 MVC设计模式描述
MVC
[12]
是Model-View-Controller的简称,它是一种设计模式,它把应用程序分成
三个核心模块:模型、视图、控制器,它们各自处理自己的任务。
视图是用户看到并与之交互的界面,作用包括向用户显示相关的数据、接受用户的
输入、向模型查询业务状态、接受模型发出的数据更新事件,从而对用户界面进行同步
更新。
模型表示业务数据和业务逻辑,是应用程序的主体部分。一个模型能为多个视图提
供数据,因此提高了代码的可重用性。
控制器接受用户的输入并调用模型和视图去完成用户的需求。当Web用户单击Web
页面中的递交按钮来发送HTML表单时,控制器本身不输出任何东西和做任何处理。控
24
齐齐哈尔大学毕业设计(论文)
制器接收请求并决定调用哪个模型组件去处理请求,然后决定调用哪个视图来显示模型
处理返回的数据。
MVC的优点表现在如下几个方面:
1.首先,最重要的一点是多个视图能共享一个模型。同一个模型可以被不同的视
图重用,大大提高了代码的可重用性。
2.由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这
种设计思想能构造良好的松偶合的构件。
3.此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同
的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。
MVC处理过程的结构图,见图6-1。
图6-1 MVC模式图
6.3 Struts2,Hibernate技术描述
6.3.1 Struts2描述
Struts2
[9]
是目前Java Web MVC框架中不争的王者。Struts2由一组相
协作的类(组件)、Serlvet以及jsp tag lib组成。由于Struts 实质上就是在JSP
Model2的基础上实现的一个MVC框架,所以基于struts构架的web应用程序基本上符
25
齐齐哈尔大学毕业设计(论文)
合JSP Model2即MVC的设计标准。其中的模型是JavaBean,控制器是ActionServlet、
Action,视图是JSP、Struts客户化标签。
Struts2的体系与Struts1体系的差别非常大,因为Struts2使用WebWork的
设计核心,而不是Struts1的设计核心。Struts2中大量使用拦截器来处理用户的
请求,从而允许用户的业务逻辑控制器与Servlet API分离。
Struts2 控制器组件主要包括:充当Struts2框架的中央控制器的ActionServlet
组件、充当每个子应用模块的请求处理器的RequestProcessor组件、负责处理一项具
体的业务的Action组件。其工作流程如图6-2:
图6-2 Struts2流程图
Struts2 的另一特点是使用ActionForm Bean,ActionForm Bean也是一种
JavaBean,除了具有一些JavaBean的常规方法,还包含一些特殊的方法,用于验证HTML
表单数据以及将其属性重新设置为默认值。Strut2s框架利用ActionForm Bean来进行
View组件和Controller组件之间表单数据的传递。JSP文件使用Struts2标签读取修
改后的ActionForm Bean的信息,重新设置HTML表单。
26
齐齐哈尔大学毕业设计(论文)
6.3.2
Hibernate描述
Hibernate是连接Java应用程序和关系数据库的中间件,它封装了JDBC,实现了
Java对象的持久化;封装了所有数据访问细节,使业务逻辑层专注于业务逻辑。并且通
过对象关系映射(Object Relational Mapping,简称ORM)解决了面向对象与关系数据
库之间存在的互不匹配的现象。如图6-3:
如图6-3 Hibernate流程图
6.4 SQL语言描述
SQL(Structure Query Language结构化查询语言)自1974年被提出,至今已经是
世界上最流行的关系数据库的标准语言。
SQL语言的分类
1. DDL(Data Definition Language)数据定义语言,其作用包括创建数据库对象、
删除数据库对象、修改数据库对象(create、drop、alter)。
2. DML(Data Manipulation Language)数据操纵语言,其作用包括查找数据信息、
插入数据信息、删除数据信息、更改数据信息(select、 insert、 delete、 update)。
3. DCL(Data Control Language)数据控制语言,作用主要对是授权数据库对象(grant, revoke)。
27
齐齐哈尔大学毕业设计(论文)
第7章 系统的详细设计与实现
7.1 架构struts2框架和描述
1.在项目的lib目录下加载以下struts2相关类包如图7-1。
图7-1 struts2相关类包
他类包是配合struts2 进行其他操作的相关辅助类包。
2.配置一个文件,到src包下:
其中这几个包都是struts2 配置文件需要的,struts2-core-2.1.6 是struts2的核心包,其
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"/dtds/">
28
齐齐哈尔大学毕业设计(论文)
3.配置文件内容:
xmlns="/xml/ns/javaee" xmlns:xsi="/2001/XMLSchema-instance" xsi:schemaLocation="/xml/ns/javaee /xml/ns/javaee/web-app_2_"> .StrutsPrepareAndExecuteFilter
此处配置 文件的目的是为了配置Sturts2的入口,系统是通过 文件
来找到Struts2 的配置文件的位置以及其他相关的内容的。所以配置此内容是必须有
的。
7.2 架构Hibernate框架和描述
1.右键项目名,点击Myeclipse,再点击AddHibernate…导入Hibernate相关类包。
同时在src包下建立配置文件。
2.由于hibernate自身分装了配置数据库驱动,在配置hibernate框架的同时,利用
hibernate自身的特点,来建立数据库的链接,如图7-2。图7-2主要显示的是配置Hibernate
时候要配置的数据库驱动操作。它显示了数据库的驱动的类型和数据库用户的用户名等
信息。
29
齐齐哈尔大学毕业设计(论文)
图7-2配置Hibernate链接
3.在Hibernate配置文件下()中配置数据池操作如下:
7.3 系统功能的实现
7.3.1 系统的登录功能实现
图7-3系统登录功能图
30
齐齐哈尔大学毕业设计(论文)
系统登录功能页面主要是通过Macromedia Dreamweaver 8 软件来实现的前台页面。
通过css样式和div标签实现页面的组合。系统登录的用户名和密码都是通过系统的数据
库的表Tyuser中的username和password两个字段来控制的。在后台处理上,为了达到系
统的安全性,当系统用户进入系统后,不能通过Web页面的后退按钮再次返回该页面。系
统的
标签通过action属性也就是发布者:admin,转转请注明出处:http://www.yc00.com/web/1714143775a2389873.html
评论列表(0条)