JAVA课程设计企业销售管理系统Word下载.docx
《JAVA课程设计企业销售管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《JAVA课程设计企业销售管理系统Word下载.docx(20页珍藏版)》请在冰豆网上搜索。
![JAVA课程设计企业销售管理系统Word下载.docx](https://file1.bdocx.com/fileroot1/2022-10/28/c9ff488d-6ed0-4539-87ee-082e0a001209/c9ff488d-6ed0-4539-87ee-082e0a0012091.gif)
·
03
b)系统组成·
2.正文
a)系统分析
i.功能模块·
04
ii.功能流程图·
06
b)数据库设计·
07
c)系统详细设计
i.连接数据库·
08
ii.主界面·
iii.修改、添加、删除模块·
10
iv.查询、打印、登录模块·
14
3.系统使用说明·
21
4.日记·
22
5.心得体会·
6.参考文献·
23
7.致谢·
一、任务书
(一)、系统功能分析
本系统用于对企业销售进行管理,涉及员工基本信息表、商品信息表和员工销售信息表,主要功能包括:
●数据表记录的添加、删除、修改和浏览。
●对员工基本情况、商品和销售相关信息的查询。
●报表打印输出。
●系统退出。
(二)、系统组成
根据系统的功能分析,给出系统的参考解决方案。
整个系统功能通过菜单实现,包括数据库、表单、菜单、报表和主程序等几个部分,具体为:
后台数据库
销售管理数据库:
1.员工基本信息表(员工编号,员工名,年龄,性别,部门,职务)。
2.商品信息表(商品编号,商品名称,商品单价)。
3.员工销售信息表(员工编号,商品编号,商品数目,应付金额,顾客付款,找回金额)。
二、正文
(1)系统分析:
企业销售管理系统主要实现的功能为:
与数据库连接,实行对员工基本信息表、商品信息表、员工销售信息表的查询、修改、添加、删除等功能的实现。
以及对3张表的信息进行输出打印,打印保存成XLS格式。
功能模块如下:
查询功能:
添加功能:
修改功能:
删除功能:
程序结构流程图:
(2)数据库设计:
按照规范设计的方法,考虑数据库及其管理系统开发的全过程,将数据库设计分为以下六个阶段:
·
需求分析
概念结构设计
逻辑结构设计
物理结构设计
数据库实施
数据库运行和维护
基本要求
在mysql软件基础上,利用应用系统开发为企业销售管理设计数据库和建立相应的数据库。
创建4个表格,分别为sellInfo,staffInfo,goodsInfo,以及登录所需的password表格。
信息要求,处理要求,安全性和完整性要求,数据流图,数据字典,数据项之间应有的联系必须表示出来,用数据依赖表示即可逻辑结构设计必须:
说明各个关系模式所属的范式,如果不是BC或3NF范式,
(3)系统的详细设计:
一、连接数据库:
importjava.sql.*;
publicclassConnection1{
Connectionconnect;
privateStringdbDriver="
com.mysql.jdbc.Driver"
;
//加载数据库驱动
privateStringurl="
jdbc:
mysql:
//localhost:
3306/sell?
true&
characterEncoding=utf-8"
//地址
/**CreatesanewinstanceofconnectJdbc*/
publicConnectiongetConnection(){
try{
Class.forName(dbDriver).newInstance();
connect=DriverManager.getConnection(url,"
root"
"
123456"
);
}catch(Exceptionex){
System.out.println("
数据库加载失败"
}
returnconnect;
二、主界面:
View.java
首先在主界面的panel里显示数据库中的数据,以商品信息表为例。
JTabletable;
JScrollPanejscrollpane;
//申明滚动面板变量
TableModelmyTable=newDefaultTableModel();
Connection1db=newConnection1();
Connectioncon=db.getConnection();
//连接到数据库
Statementps;
try{
ps=con.createStatement();
ResultSetrs;
rs=ps.executeQuery("
select*fromgoodsInfo"
//在sell表格中执行查询
ResultSetMetaDatametaData;
metaData=rs.getMetaData();
//得到数据库元数据
intnumber=metaData.getColumnCount();
//得到数据库中表的列的个数
VectorcolumnNames=newVector();
//调用Vector类,生成可自动增长的数组对象列
Vectorrows=newVector();
//对象行
for(intnum=0;
num<
number;
num++){
columnNames.addElement(metaData.getColumnLabel(num+1));
}//循环生成
while(rs.next()){
VectornewRow=newVector();
/*for循环,将结果集中一行数据放到newRow矢量中*/
for(inti=1;
i<
=number;
i++){
newRow.addElement(rs.getObject(i));
}/*将上面的矢量newRow作为矢量rows中的一个元素,这样rows中的一个元素就代表结果集中的一行数据*/
rows.addElement(newRow);
//增长行
myTable=newDefaultTableModel(rows,columnNames);
//在表格中加载数据
}
}catch(SQLExceptionex){
}
table=newJTable(myTable);
jscrollpane=newJScrollPane(table);
jscrollpane.setViewportView(table);
jscrollpane.revalidate();
jPanel3.setLayout(newBorderLayout());
jPanel3.add(jscrollpane,BorderLayout.CENTER);
jPanel3.setVisible(true);
效果如下:
三、修改模块:
首先对所需修改的员工信息进行查询,并显示在修改界面上,关键代码如下:
Connection1db=newConnection1();
//连接数据库
Stringsql="
select*fromsellInfo"
Statementps=con.createStatement();
ResultSetrs=ps.executeQuery(sql);
//查询
if(rs.getString("
员工编号"
).equals(jTextField1.getText())){
//匹配该员工的信息;
num1=rs.getString("
num2=rs.getString("
商品编号"
num3=rs.getInt("
商品数目"
price1=rs.getInt("
应付金额(元)"
price2=rs.getInt("
顾客付款(元)"
price3=rs.getInt("
找回金额(元)"
}
jTextField2.setText(num1);
jTextField3.setText(num2);
jTextField4.setText("
"
+num3);
jTextField5.setText("
+price1);
jTextField6.setText("
+price2);
jTextField7.setText("
+price3);
//在修改界面上显示该员工销售的信息
然后在对修改界面上的信息进行修改,并返回保存至数据库,关键代码如下:
Stringsql="
updatesellInfoset员工编号='
+num1+"
'
商品编号='
+num2+"
商品数目="
+num3+"
应付金额(元)="
+price1+"
顾客付款(元)="
+price2+"
找回金额(元)="
+price3+"
where员工编号='
ps.executeUpdate(sql);
//数据更新
}catch(SQLExceptione){
e.printStackTrace();
四、删除模块:
首先对