企业进销存系统.docx
《企业进销存系统.docx》由会员分享,可在线阅读,更多相关《企业进销存系统.docx(34页珍藏版)》请在冰豆网上搜索。
企业进销存系统
毕业设计(论文)
设计(论文)题目:
企业进销存系统
摘要
随着科学技术的快速发展,生活中的每个角落都离不开信息技术,信息技术的不断进步,互联网的影响不断深刻,带来了结果就是网络信息的急剧增长。
而社会上的各行各业也无法脱离于这股时代大潮流,通过应用最新的信息技术,实现自己行业内部的信息化,进而简化和规范自己行业内部的业务行为和规则,是每个企业都要面对的问题。
通过企业进销存平台,各种中小型零售商可以在线经管自己的买卖行为,给经营者带来了很大的便利。
进销存系统的核心在于其对自己仓库数量的经管,以及货物入库和货物出库时仓库与购物车之间数据的协同对应。
企业进销存系统在前台页面上选取JSP作为开发语言,数据库选用了MySQL数据库,开发IDE采用MyEclipse10,运行服务器采用tomcat6.0。
企业进销存系统是一个基于B/S的功能强大的进销存系统。
关键词:
进销存,JSP,MySQL,MyEclipse
ABSTRACT
Withtherapiddevelopmentofscienceandtechnologyandlifeareinseparablefromeverycornerofthecontinuousadvancesininformationtechnology,informationtechnology,theInternetcontinuestoprofoundlyinfluencebroughttheresultisasharpincreaseinnetworkinformation.Andallwalksoflifeinthecommunityalsocannotescapethetrendofthetimesinwhichshares,throughtheapplicationofthelatestinformationtechnologytoachievetheirinformationtechnologywithintheindustry,andthussimplifyandstandardizetheirbusinesspracticeswithintheindustryandtherulesofeveryenterpriseToconfronttheproblem.
Invoicingbybusinessplatform,avarietyofsmallonlineretailersmanagetheirtradingbehavior,totheoperatorshasbroughtgreatconvenience.Invoicingsystemsynergybetweencorewarehouseandshoppingcartdatacorrespondingtoitsownwarehousewhenthenumberofmanagementandstorageofgoodsandcargooutofthelibrary.
EnterpriseInvoicingsystemselectedonthefrontpageJSPasadevelopmentlanguage,databaseselectedMySQLdatabasedevelopmentIDEusingMyEclipse10,runtheserverusingtomcat6.0.InvoicingSystemisanenterprisebasedonfunctionalB/Spowerfulinvoicingsystem.
Keywords:
Invoicing, JSP, MySQL,MyEclipse
第一章绪论
1.1课题背景
互联网的飞速发展不断影响着社会上各行各业的经营情况,从上个世纪起,随着互联网在中国的普及,我国的许多零售商开始尝试通过信息系统来经管他们的日常业务。
但由于存在各种因素,例如企业的业务各不相同、信息化的法律规定也不够明确、各种物流系统不够完善,这些因素交织在一起,严重阻碍着信息化走进零售企业。
本世纪以来,中国的基础设施有了长足的进步,之前阻碍信息化的因素也一个一个的被解决,企业进销存系统终于在中小型零售商中蔓延开来。
1.2目的和意义
仓储信息化经管与传统经管方式比较有很多的优点如:
1.查询比较方便
仓储信息化提供了非常多的查询途径,可以通过品种、日期等途径进行查询,快速又准确。
2.信息量大
与过去的经管方式比较,仓储信息化经管能够提供大量商品信息。
3.成本比较低,风险小,不受地点的限制
信仓储息化经管最突出的优势是,存储的数据具有可靠性,与常见的报表相比,计算及存储具有更高的可靠性,这使得经营者可以更方便的查看当前的库存和出入库信息。
1.3开发工具及技术
1.3.1开发工具
系统所采用的开发工具大部分为开源工具,具有较高的稳定性,同时这些工具都有大量的介绍文献和使用指导,是的用户可以更方便的使用它们进行系统的开发。
1.3.1.1MyEclipse
MyEclipse,通常用来设计Java,J2EE的Eclipse插件集合,利用它可以完成对数据库和J2EE的开发。
通过对应用程序服务器进行整合,可以大大的增强运算速度。
MyEclipse的功能十分强大,几乎涵盖了各种设计功能。
1.3.1.2Tomcat
Tomcat是一种是一个免费的开放源代码的Web应用服务器。
在访问客户比较少的情况下被经常采纳,在设计JSP程序时成为最好的选择。
换句话说,将Tomcat服务器安装到一台电脑上时,可通过它对HTML页面的访问请求进行配合。
事实上,Tomcat可以看成Apache服务器基础上的延伸,但它工作时相对比较独立,因此当tomcat工作时,事实上它是看成一个与Apache服务器相对独立的进程运行的。
1.3.1.3MySQL
MySQL采用C和C++进行设计,并同时采纳了不同的编译器来检验,确定源代码的可移植性;支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统;为多种编程语言提供了API;支持多线程,充分对CPU资源加以利用;提供TCP/IP、ODBC和JDBC等很多数据库连接途径;能够对拥有很多条记录的大型数据库进行运算。
通常来说,MySQL所设计的功能足以满足一般的个人客户和中小型企业,而且因为MySQL是开放源码软件,所以能够在很大程度上减少整体的费用。
1.3.2JSP
JSP程序使用了Java编程语言,JSP技术可以对动态网页进行封装。
通过tags和scriptlets,网页还能访问存在于服务端的资源的应用逻辑。
JSP可以分离网页逻辑与网页设计和显示,对可重用的基于组件的开发进行支撑,更容易的对基于Web的应用程序进行设计。
当Web服务器接收到访问JSP网页的请求时,首先运行的程序段,接下来将JSP文件中的HTML代码和运行效果一并返还给用户。
通过Java文件的插入能够对数据库、网页多重定向等运行,从而满足构建动态网页所需要的程序。
JSP和Servle相同,都可以通过服务器端运行。
由于能够将一个HTML文本返回给用户端,所以用户端具备浏览器就可以进行浏览。
HTML程序和穿插在内部的Java程序可以构建JSP网页。
在服务器被用户端访问时,能够处理相应的Java代码,然后将产生的HTML页面再返回给用户端的浏览器。
JSP的设计关键是Servlet,通常大型的Web应用程序的设计成果也通过JavaServlet和JSP的协作。
JSP既拥有了方便快捷的Java程序,又统统的面向用户,既实现了平台的无关性危险还比较小,可以具备互联网的全部优势。
JSP技术的优点:
(1)一次编写,到处运行。
除了系统之外,代码无需做任何改动。
(2)系统的多平台支持。
通常情况下,能够在任何情况下的全部平台上进行设计,能够安排在任何情况中,也能够在任何情况下进行发展。
相比ASP/.net来说,优点是显而易见的。
(3)强大的可塑性。
通过一个不大的Jar程序能够对Servlet/JSP进行运行,也能够通过很多服务器进行集群和负载平衡,甚至能够通过多台Application解决问题。
单台服务器到多台服务器,Java展现了一个强大的功能。
(4)具有强大和多样化的开发工具支持。
Java已经有了很多的设计方法,何况大部分工具都是没有花费的,这中间有很多都在多种平台之下顺畅的进展。
(5)支持服务器端组件。
只有很有力的服务器端组件才能支撑web运行,因此开发者可以在调用web页面时通过另外的开发工具来达成纷乱效用的组件,来加强系统的可操作性。
JSP可以通过完善的JAVABEANS组件来达成纷乱的商务功能。
内部对象表现出:
request用户端请求,此请求会涵盖来自GET/POST请求的参数;response网页传回用户端的反应;经管pageContext网页的属性;session与请求相关的会话;applicationservlet正在进行的内容;out用来输送响应的输出流;config 代码片段配置对象;page JSP网页本身。
1.3.3JavaScript
JavaScript是一种根据对象和情况驱使而且相对危险性比较低的用户端脚本语言。
还可以大范围的用于用户端Web设计的脚本语言,一般可以用做增加HTML网页动态功能,例如反馈用户的所有操控。
JavaScript的一个关键作用是向对象的功能,根据以对象为基础的程序开发,能够用更直接、系统化和能够反复利用的方法设计程序。
根据HTML程序,可以采用Javascript对交互式Web网页进行设计。
Javascript的应用能够达成网页和客户之间及时、动态、交互性的关系。
这样网页可以呈现非常丰富的信息和非常好看的内容。
在本系统中不少设计都采用了javascript技术,例如校验用户输入数据的有效性等。
1.4计算机需求
硬件需求:
CPU:
酷睿i3
内存:
1GB以上
主频:
2GBHZ以上
硬盘:
300GB以上
软件需求:
系统版本:
Win7Win8
IDE:
MyEclipse10
系统服务器:
Tomcat6.0
数据库版本:
MySQL5.0
Java版本:
Java1.6
浏览器版本:
GoogleChrome
第二章系统分析
2.1可行性分析
所谓的可行性分析是指通过调查客观现实,再应用的科学的手段,预测自己的开发计划是否具有现实意义。
2.1.1技术可行性
系统的开发由本人担任,在开发工具上,选用Myeclipse,数据库采用mysql,开发语言选择java,模式采用MVC模式,所有的技术都是本人大学期间所学,且这些技术都经历了时间的考验,被证明是可靠地技术,技术上同样具有可行性。
2.1.2经济可行性
本系统的运行对机器本身的硬件要求并不高,也不需要经管人员具有太多的专业知识,同时开发人员由本人担任,所以也无需考虑系统开发的人力资源成本,所以本系统的开发在经济上是可行的。
2.1.3运行可行性
本系统在开发完成后,所有的模块都进行了相应的功能检测和稳定性检测,运行可行性得到了保证。
2.1.4法律可行性
本系统拥有自主的只是产权,没有使用任何违法的软件也没有交易任何非法的成品,所以在法律可行性上也没有需呀担心的地方。
2.1.5时间可行性
本人的毕业设计有充足的时间进行开发,且前期经历了周密的设计,因此不存在时间可行性上的问题。
综上所述,开发一个网上网上男装销售系统是必要可行的。
2.2功能模块分析
按照最初的开题报告设想,系统主要分为一下几个大的功能模块。
(1)客户经管模块
客户经管模块用于经管进销存系统的客户,功能包括添加客户,修改客户,删除客户。
客户经管模块的用例图如图3-1所示:
图3-1客户经管模块用例图
(2)供应商经管模块
供应商经管模块用于经管进销存系统的供应商,功能包括添加供应商,修改供应商,删除供应商。
供应商经管模块的用例图如图3-1所示:
图3-2供应商经管模块用例图
(3)产品经管模块
供应商经管模块用于经管进销存系统的供应商,功能包括添加供应商,修改供应商,删除供应商。
供应商经管模块的用例图如图3-1所示:
图3-3会员经管功能用例图
(4)订单经管功能
该经管功能主要完成对订单信息的经管,包括前台的下订单、后台的查询订单、删除受理等操作。
该功能的用例图如图3-4所示:
图3-4订单经管功能用例图
前台功能模块图
2.3设计的基本思想
设计的基本思想主要有以下几点:
1.采用B/S模式完成设计,其好处是后台与前台层次运行时比较清晰,并且和大部分用户的网页搜索方式相适宜。
2.设计理念与开发使用面向对象的方式。
对整体系统的认识无误,是运用面向对象技术的基础,通过它可以确保系统良好的解构,进而使计算机销售商品具有较好的稳定性和运行效率。
3.采用模块化设计。
模块化设计要把所有系统分为比较小的模块,这样对代码的重载有好处,可以使设计容易和过程的实现。
4.系统界面简单方便。
设计容易的系统界面,可以使用户比较快的对系统的控制进行适应。
5.速度优先的原则。
由于此工具最关键的检验规范就是速度,所以在开发的过程中,尽可能做到占用资源少,运行速度快。
6.设计既要突出重点,又要考虑到细节。
要符合设计要求,在有可能改进的方面进行扩展,使系统更加适应用户的需要。
4.简单方便的系统界面。
设计简单友好的系统界面,方便用户较快的适应系统的操作。
5.速度优先原则。
由于此工具最重要的评测规范就是速度,因此在设计过程中,具体过程尽量做到资源占用少,速度快。
6.设计既要突出重点,又要细致周到。
要符合设计需求,在有可能改进的地方进行扩充,使系统更适应用户的需要。
2.4性能需求
2.4.1系统的安全性
此网上网上男装销售系统要严格控制经管权限,具体要求如下:
1.要想对本系统的计算机销售商品信息进行经管,首先要依靠用户名和密码在系统中登陆,无权限的用户不可以通过任何方式登录系统和对系统的任何信息和数据进行查看,这样可以保证系统的安全可靠性和准确性。
2.在具体实现中对不同的权限进行设定,不同权限的用户在系统中登陆后,不可以越级操作,只有经管员能够使用全部模块;普通用户只能在线查询信息,例如,对商品信息进行查询、在线购买计算机销售商品、下订单等功能。
2.4.2数据的完整性
1.所有记录信息要保持全面,信息记录内容不可以是空
2.各种数据间相互联系要保持正确
3.相同数据在不同记录中要保持一致
2.5界面需求
目前,界面设计已经成为对软件质量进行评价的一条关键指标,一个好的用户界面可以使用户使用系统的信心和兴趣增加,从而使工作效率提高,JSP技术是将JAVA语言作为脚本语言的,JSP网页给整个服务器端的JAVA库单元提供了一个接口用来服务HTTP的应用程序。
创建动态页面比较方便。
客户界面是指软件系统与用户交互的接口,往往涵盖输出、输入、人机对话的界面格式等。
1.输出设计
输出是由电脑对输入的基本信息进行解决,生成高质量的有效信息,并使之具有一定的格式,提供给经管者使用,这是输出设计的主要责任和目标。
系统开发的过程与实施过程相反,并不是从输入设计到输出设计,而是从输出设计到输入设计。
这是由于输出表格与使用者直接相联系,设计的目的应当是确保使用者可以很方便的使用输出表格,并且可以将各部门的有用信息及时的反映出来。
输出设计的准绳是既要整体琢磨不同经管层的所有需要,又要简洁,不要提供给用户不需要的信息。
2.输入设计
输入数据的收集和录入是比较麻烦的,需要非常多的人力和一定设备,而且经常出错。
一旦输入系统的数据不正确,那么处理后的输出将扩大这些错误,因此输入数据的准确性对于整个系统质量的好坏是具有决定性意义的。
输入设计有以下几点原则:
1)输入量应尽量保持在能满足处理要求的最低限度。
开发时可使用设置字段初值,下拉式数据窗口等方式尽量使用户键盘输入量减少。
输入量越少,错误率就越少,数据的准备时间也越少。
2)应尽可能使输入的准备及输入的过程进行时比较方便,这样使错误的发生率降低。
3)应尽量早检查输入数据(尽量接近原数据发生点),以便使错误更正比较及时。
4)输入数据尽早地记录成其处理所需的形式,以防止数据由一种介质转移到另一种介质时需要转录而可能发生的错误。
第三章数据库设计
3.1数据库的分析与设计
数据库是计算机信息系统的基础。
信息的收集、整理、存储、检索、更新、加工、统计和传播等操作必须在数据库经管系统的的支持下才能进行。
目前,电脑系统的关键与核心部分就是数据库。
数据库开发的优劣对整个系统的质量和速度有着直接影响。
数据库的设计一般要可以分为个步骤:
分别是分析需求、设计概念、设计逻辑、设计物理。
3.1.1数据库的概念结构设计
设计概念就是在数据分析的基础上自下而上的对整个系统的数据库概念结构进行设计。
从用户的角度对视图进行开发,然后集成视图,最后分析从而取得最后的结果。
对概念进行设计时采用实体—联系(E-R)的模型开发措施。
E-R模型法的构成元素有:
实体、属性、联系,E-R模型可以用E-R图来表示,是对用户工作环境中所相关的事物给予提示,对实体特性的描述就是属性。
设计概念的出发点是能够对企业组织信息要求的数据库概念结构进行反映,就是概念模式。
概念模式不依附数据库逻辑结构,,也不依赖支持数据库的DBMS,独立于计算机系统。
通过上述分析对数据库的需求,与系统概念模型的特点及开发方法相结合,我们可以建立E-R模型图。
实体
属性
实体间关系
3.1.2数据库的逻辑结构设计
我们知道,数据库概念模型独立于任何特定的数据库经管系统,因此,需要根据具体使用的数据库经管系统的特点进行转换。
即转化为按计算机观点处理的逻辑关系模型,E-R模型向关系数据库模型转换应遵循下列原则:
*每一个实体要转换成一个关系
*所有的主键必须定义非空(NOTNULL)
*对于二元联系应按照一对多、弱对实、一对一、多对多等联系来定义外键。
(1)普通用户表主要是记录了普通用户基本信息。
表结构如表3.1所示。
表3.1会员信息表(t_huiyuan)
列名
数据类型
长度
允许空
是否主键
说明
id
int
4
否
是
自动编号
loginname
varchar
50
否
否
账号
loginpw
varchar
50
否
否
密码
xingming
varchar
50
否
否
姓名
xingbie
varchar
50
否
否
性别
nianling
int
4
否
否
年龄
dianhua
varchar
20
否
否
联系方式
address
varchar
20
否
否
住址
(2)商品类别信息表主要是记录了商品类别的基本信息,表结构如表3.2所示。
表3.2商品类别信息表(t_leibie)
列名
数据类型
长度
允许空
是否主键
说明
id
int
4
否
是
类别ID
Mingcheng
varchar
50
否
否
类别名称
(3)商品信息表主要是商品的相关信息,其中ID是主键,表结构如图3.3所示。
表3.3商品信息表(t_goods)
列名
数据类型
长度
允许空
是否主键
说明
id
Int
4
否
是
商品ID
leibieId
Int
4
否
否
类别ID
mingcheng
varchar
50
否
否
名称
jieshao
varchar
50
否
否
介绍
fujian
varchar
50
否
否
商品图片
jiage
int
50
否
否
商品价格
(4)经管员信息表主要记录了经管员的账号信息,包括用户名和密码,表结构如表3.7所示。
表3.5经管员信息表(t_admin)
列名
数据类型
长度
允许空
是否主键
说明
userId
int
4
否
是
编号
userName
varchar
50
否
否
用户名
userPw
varchar
50
否
否
密码
(5)订单信息表主要记录的会员的订单的信息,包括订单编号、下单时间等,表结构如表3.7所示。
表3.6订单信息表(t_order)
列名
数据类型
长度
允许空
是否主键
说明
id
int
4
否
是
自动编号
bianhao
varchar
50
否
否
订单编号
xiadanshi
varchar
50
否
否
下单时间
zt
varchar
4
否
否
状态
songhuodizhi
varchar
50
否
否
送货地址
fukuanfangshi
varchar
50
否
否
付款方式
zongjia
varchar
50
否
否
总金额
huiyuanId
int
4
否
否
会员
3.1.3数据库的连接原理
采用JDBC连接数据库的方式,只需在工程中导入对应数据库的jar包,就可以方便的对数据库进行连接,在程序中,用Class.forName()方法来加载驱动程序,在用DriverManager的getConnection()方法就可以创建一个数据库连接。
程序采用的是DAO模式来操作数据库,DAO(DataAccessObject,数据访问对象),是Java编程中的一种经典模式,已被广泛应用,也是J2EE架构中持久层框架的基础知识,基于分层次式的软件架构来实现对数据库的访问操作。
DAO模式的主要思想就是从抽象数据源获取与操纵数据的方法。
抽象数据的含义就是编写应用程序的程序员不必关心数据库的物理位置,已经是何种数据库,只需使用封装数据库中表示记录的数据对象即可。
其思想如图3.10所示:
BusinessObject
DataAccessObject
DataSource
DataTransferObject
使用
封装
创建/使用
获取/修改
图3.10DAO模式类图
图中BussinessObject是业务对象,是使用DAO模式的客户端;DataTransferObject数据传输对象,在应用程序不同层次之间传输对象,在一个分布式应用程序中,通常可以提高整理的性能;DataObjectAcces数据输入/输出对象封装了对数据源的一些基本操作;DataSource指的是数据源。
可以从图中看出,DAO模式分离了业务逻辑和数据罗即将,是的编写的软件具有良好的层次式体系结构。
本系统为了方便数据库的操作,主要使用DBContent的对象来接一个数据库(建立一个类DBContent),代码如下:
publicDBContent(){
StringCLASSFORNAME="com.m