JAVA课程设计产品销售管理系统.docx
《JAVA课程设计产品销售管理系统.docx》由会员分享,可在线阅读,更多相关《JAVA课程设计产品销售管理系统.docx(10页珍藏版)》请在冰豆网上搜索。
JAVA课程设计产品销售管理系统
课程设计说明书
课程名称:
Java程序设计课程设计
设计项目:
产品销售管理系统
学生姓名:
学号:
专业:
软件工程
班级:
指导教师:
_
2017年2月
1、任务与具体要求
建立数据库:
产品库(产品ID、名称、规格等),销售员库(销售员ID、姓名、性别、电话等),销售记录库(销售日期、销售产品ID、售出数量、单价、销售员ID等)。
实现对销售数据的输入、查询、修改与维护(例如操作员管理、数据备份等)等功能。
二、设计说明书包括的内容
需求分析、系统功能结构、软硬件环境、开发工具、数据库结构设计、各个功能模块的详细实现方法、系统测试数据与结果、设计体会、参考文献等
三、应完成的图纸
系统功能结构框架图、各功能模块窗口界面图、算法流程图、测试结果图等
四、评语及成绩
指导教师(签字)_____________
________年____月日
1问题概述
设计一个产品销售管理系统,以解决传统产品信息管理方式的诸多不便和弊端。
2系统需求分析
在客户的日常管理中,经常需要对产品的相关信息进行处理,采用传统的手工记录,查询方式,显然有很多不便,如多次的增、删、改可能使记录变得混乱,为今后的信息提取带来很多麻烦。
为了解决这一问题,可采用现代化的手段——计算机进行系统的管理。
这样可大大提高管理的质量和效率,并且使客户的日常管理也从手工操作中解脱出来,减少纸制材料的数量,对日常信息的查询、方便、快捷。
因此,基于这些方面的考虑,决定开发本系统。
3系统概要设计
系统的主要功能
系统的主要功能是实现基本的客户的数据管理和维护。
主要包括:
(1)添加:
添加产品信息记录
(2)显示:
显示产品信息记录
(3)删除:
删除产品信息记录
(4)查询:
查询产品信息记录
(5)修改:
修改产品信息记录
(6)保存:
将产品保存到数据库
系统的总体结构
产品数据库管理:
显示全部产品信息:
将全部的产品信息打印出来
添加产品记录信息:
添加新的产品记录信息
更新产品记录信息:
将已经添加的产品信息进行更新
删除产品记录信息:
将已经添加的产品记录删除
销售员数据库管理:
显示全部销售员息:
将全部的产品信息打印出来
查询销售员信息:
通过ID查询销售员并将其信息打印出来
添加销售员记录信息:
添加新的销售员信息
更新销售员记录信息:
将已经添加的销售员信息进行更新
删除销售员记录信息:
将已经添加的销售员记录删除
销售记录数据库管理:
显示全部销售记录信息:
将全部的销售记录信息打印出来
查询销售记录信息:
查询销售记录并将其信息打印出来
添加销售记录信息:
添加新的销售记录信息
更新销售记录信息:
将已经添加的销售记录信息进行更新
删除销售记录信息:
将已经添加的销售记录删除
系统软硬件环境
本程序所适用的计算机系统软硬件环境要求为:
硬件环境:
Pentium?
III?
500以上内存:
256M?
软件环境:
WindowsXP?
及以上
数据结构设计
客户信息数据结构类型如下:
销售记录包括销售日期、销售产品ID、售出数量、单价、销售员ID,定义方式如下:
privateStringsalesDate;
privateIntegerproductID;
privateStringsalesVolumes;
privateStringsalesPrice;
privateIntegersalesID;
产品信息包括产品ID、名称、规格,定义方式如下:
privateintproductID;
privateStringproductName;
privateStringproductSpecifications;
销售员信息包括销售员ID、姓名、性别、电话,定义方式如下:
privateintsalespersonID;
privateStringsalespersonName;
privateintsalespersonPhone;
4系统的详细设计
首先声明了三个类分别存储三种不同的数据库的信息如下,再通过一系列对数据库的操作实现对数据的增、删、改、查。
产品信息管理
功能实现:
通过使用SQL语句对数据库的操作进行对产品信息的管理
代码实现:
packageProductSystemOne;
import.*;
import.*;
;
import.*;
publicclassSoldNoteDateDao{
publicListquery()throwsSQLException{
Connectionconn=();入主菜单后,输入“1”进入产品信息管理界面如下图
2.在产品信息管理菜单下,输入“1”显示所有的产品信息如下图
3.在产品信息管理菜单下,输入“2”和产品的ID进行产品信息查询如下图:
4.在产品信息管理菜单下,输入“3”和相关信息进行对产品信息的修改如下图:
5.在产品信息管理菜单下,输入“4”和相关信息进行添加产品信息的操作如下图
6.在产品信息管理菜单下,输入“5”和ID进行对产品信息的删除如下图
销售员信息管理
1.在主菜单下,输入“2”进入销售员信息管理菜单
2.在销售员信息管理菜单下,输入“1”显示全部销售员信息如下图:
3.在销售员信息管理菜单下,输入“2”和ID进行对销售员信息的查询如下图:
4.在销售员信息管理菜单下,输入“3”和相关信息进行对销售员信息的修改如下图:
4.在销售员信息管理菜单下,输入“4”和相关信息进行对销售员信息的添加如下图:
5.在销售员信息管理菜单下,输入“5”和相关信息进行对销售员信息的修改如下图:
产品记录信息管理
1.在主菜单下,输入“3”进入销售记录信息管理菜单
2.在销售记录信息管理菜单下,输入“1”显示全部销售记录信息如下:
3.在销售记录信息管理菜单下,输入“2”和相关信息添加销售记录信息如下图:
4.在销售记录信息管理菜单下,输入“3”和相关信息更新销售记录信息如下图:
5.在销售记录信息管理菜单下,输入“4”和相关信息更新销售记录信息如下图:
6结束语
本次操作实训虽然很辛苦,但实在是受益匪浅。
在操作实训过程中碰到了很多问题,刚开始的时候,还真不知道从哪里下手。
但最终在图书、同学和老师的帮助下都得到了解决,让我学会了好多书本上没有的东西,通过本次操作实训我也能将课本上的知识融会贯通,起到了很好的辅助学习的效果,但是我发现我学到的知识比整整一个学期学到的都多。
理论和实践的相结合是学习最有效的方法。
在实验的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,这次操作实训之后,一定把以前所学过的知识重新温故。
通过这次操作实训使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
最后,要感谢学校为我们提供这次实验机会,也要感谢老师的教导,帮助与支持。
7参考文献
书?
?
?
?
名Java编程思想(第4版)
作?
?
?
?
者BruceEckel
出版社机械工业出版社
出版时间2007年6月1日
8附录
主要代码:
:
packageProductSystemOne;
publicclassAddProductDateSystemAction{
publicAddProductDateSystemAction(){
ProductDaoproductDao=newProductDao();
Scannersc=newScanner;
intPID=();
StringPNAME=();
StringPSPECIFICATIONS=();
try{
(PID,PNAME,PSPECIFICATIONS);
}catch(SQLExceptione){
;
publicclassAllQueryProductSystemAction{
publicAllQueryProductSystemAction(){
ProductDaoproductDao=newProductDao();
ListlistProductDao;
try{
listProductDao=();
Iteratorpi=();
while()){
ProductDatenext=(ProductDate)();
intproductID=();
StringproductName=();
StringproductSpecifications=();
}
}catch(SQLExceptione){
;
;
publicclassDBUtil{
privatestaticfinalStringNAME="root";
privatestaticfinalStringPASSWORD="root";
privatestaticConnectionconn=null;
static{
try{
conn=(URL,NAME,PASSWORD);
}catch(ClassNotFoundExceptione){
;
import.*;
;
import.*;
publicclassSoldNoteDateDao{
publicListquery()throwsSQLException{
Connectionconn=();//链接数据库
Statementstmt=();
Stringsql="select*fromsoldnotedate";
ResultSetrs=(sql);
ListsoldNoteList=newArrayList();
SoldNoteDatesoldNoteDate=null;
while()){
soldNoteDate=newSoldNoteDate();
("salesDate"));
("salesID"));
("salesPrice"));
("salesVolumes"));
("productID"));
(soldNoteDate);
}
returnsoldNoteList;
}
publicListqueryEvery(intSID)throwsSQLException{
Connectionconn=();
Stringsql="select*fromsoldnotedatewheresalesID=?
";
PreparedStatementpst=(sql);
(1,SID);
ResultSetrs=();
ListsoldNoteList=newArrayList();
SoldNoteDatesoldNoteDate=null;
while()){
soldNoteDate=newSoldNoteDate();
("salesDate"));
("productID"));
("salesID"));
("salesPrice"));
("salesVolumes"));
(soldNoteDate);
}
returnsoldNoteList;
}
//售出产品
publicvoidsell(intSALESID,StringsalesPrice,StringsalesVolumes,intsalesDate,intPID)throwsSQLException{
Connectionconn=();
Stringsql="insertintosoldnotedatevalues(?
?
?
?
?
)";
PreparedStatementpst=(sql);
(1,SALESID);
(2,salesVolumes);
(3,salesPrice);
(4,salesDate);
(5,PID);
();
}
//更新销售数据的销售员信息
publicvoidupdateSalesperson(intPID,intSALESID)throwsSQLException{
Connectionconn=();
Stringsql="updatesoldnotedatesetsalesID=?
whereproductID=?
";
PreparedStatementpst=(sql);
(1,SALESID);
(2,PID);
();
}
//删除销售数据的信息
publicvoiddeleSalesDate(intPID)throwsSQLException{
Connectionconn=();
Stringsql="deletefromsoldnotedatewhereproductID=?
";
PreparedStatementpst=(sql);
(1,PID);
();
}
}
:
packageProductSystemOne;
publicclassUpdateProductSystemAction{
publicUpdateProductSystemAction(){
ProductDaoproductDao=newProductDao();
Scannersc=newScanner;
intPID=();
StringPNAME=();
StringPSPECIFICATIONS=();
try{
(PID,PNAME,PSPECIFICATIONS);
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
();
}
}
}
:
packageProductSystemOne;
publicclassUpdateSalepersonSystemAction{
publicUpdateSalepersonSystemAction(){
SalespersonDateDaosalespersonDateDao=newSalespersonDateDao();
Scannersc=newScanner;
intSID=();
StringSNAME=();
intSPHONE=();
try{
(SID,SNAME,SPHONE);
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
();
}
}
}
:
packageProductSystemOne;
publicclassUpdateSoleNoteSalespersonSystemAction{
publicUpdateSoleNoteSalespersonSystemAction(){
SoldNoteDateDaosoldNoteDao=newSoldNoteDateDao();
Scannerscanner=newScanner;
intPID=();
intSALESID=();
try{
(PID,SALESID);
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
();
}
}
}