收藏 分销(赏)

JAVA课程设计产品销售管理系统.doc

上传人:快乐****生活 文档编号:5421311 上传时间:2024-10-31 格式:DOC 页数:61 大小:396KB
下载 相关 举报
JAVA课程设计产品销售管理系统.doc_第1页
第1页 / 共61页
JAVA课程设计产品销售管理系统.doc_第2页
第2页 / 共61页
JAVA课程设计产品销售管理系统.doc_第3页
第3页 / 共61页
JAVA课程设计产品销售管理系统.doc_第4页
第4页 / 共61页
JAVA课程设计产品销售管理系统.doc_第5页
第5页 / 共61页
点击查看更多>>
资源描述

1、 课程设计说明书 课程名称: Java程序设计课程设计 设计项目: 产品销售管理系统 学生姓名: 学 号: 专 业: 软件工程 班 级: 指导教师: _ 2017 年 2 月一、 任务与具体要求建立数据库:产品库(产品ID、名称、规格等),销售员库(销售员ID、姓名、性别、电话等),销售记录库(销售日期、销售产品ID、售出数量、单价、销售员ID等)。实现对销售数据的输入、查询、修改与维护(例如操作员管理、数据备份等)等功能。二、 设计说明书包括的内容需求分析、系统功能结构、软硬件环境、开发工具、数据库结构设计、各个功能模块的详细实现方法、系统测试数据与结果、设计体会、参考文献等三、 应完成的图

2、纸系统功能结构框架图、各功能模块窗口界面图、算法流程图、测试结果图等四、 评语及成绩指导教师(签字)_年_月 日目录1 问题概述12 系统需求分析13 系统概要设计13.1系统的主要功能13.2 系统的总体结构23.3 系统软硬件环境33.4 数据结构设计34 系统的详细设计34.1 添加客户信息记录34.2 显示客户信息记录54.3 删除客户信息记录55 系统测试及调试56 结束语67 参考文献78 附录71 问题概述 设计一个产品销售管理系统,以解决传统产品信息管理方式的诸多不便和弊端。2 系统需求分析在客户的日常管理中,经常需要对产品的相关信息进行处理,采用传统的手工记录,查询方式,显然

3、有很多不便,如多次的增、删、改可能使记录变得混乱,为今后的信息提取带来很多麻烦。为了解决这一问题,可采用现代化的手段计算机进行系统的管理。这样可大大提高管理的质量和效率,并且使客户的日常管理也从手工操作中解脱出来,减少纸制材料的数量,对日常信息的查询、方便、快捷。因此,基于这些方面的考虑,决定开发本系统。3 系统概要设计3.1系统的主要功能 系统的主要功能是实现基本的客户的数据管理和维护。主要包括:(1)添加:添加产品信息记录(2)显示:显示产品信息记录(3)删除:删除产品信息记录(4)查询:查询产品信息记录(5)修改:修改产品信息记录(6)保存:将产品保存到数据库3.2 系统的总体结构 产品

4、数据库管理:显示全部产品信息:将全部的产品信息打印出来添加产品记录信息:添加新的产品记录信息更新产品记录信息:将已经添加的产品信息进行更新删除产品记录信息:将已经添加的产品记录删除销售员数据库管理:显示全部销售员息:将全部的产品信息打印出来查询销售员信息:通过ID查询销售员并将其信息打印出来添加销售员记录信息:添加新的销售员信息更新销售员记录信息:将已经添加的销售员信息进行更新删除销售员记录信息:将已经添加的销售员记录删除销售记录数据库管理:显示全部销售记录信息:将全部的销售记录信息打印出来查询销售记录信息:查询销售记录并将其信息打印出来添加销售记录信息:添加新的销售记录信息更新销售记录信息:

5、将已经添加的销售记录信息进行更新删除销售记录信息:将已经添加的销售记录删除3.3 系统软硬件环境本程序所适用的计算机系统软硬件环境要求为:硬件环境: PentiumIII500以上 内存:256M软件环境: Windows XP及以上3.4 数据结构设计 客户信息数据结构类型如下:销售记录包括销售日期、销售产品ID、售出数量、单价、销售员ID,定义方式如下:private String salesDate; private Integer productID; private String salesVolumes; private String salesPrice; private Int

6、eger salesID;产品信息包括产品ID、名称、规格,定义方式如下:private int productID;private String productName;private String productSpecifications;销售员信息包括销售员ID、姓名、性别、电话,定义方式如下:private int salespersonID; private String salespersonName; private int salespersonPhone;4 系统的详细设计 首先声明了三个类分别存储三种不同的数据库的信息如下,再通过一系列对数据库的操作实现对数据的增、删、改

7、、查。4.1 产品信息管理功能实现:通过使用SQL语句对数据库的操作进行对产品信息的管理代码实现:package ProductSystemOne;import java.sql.*;import java.util.*;/对产品的Daopublic class ProductDao /对产品库的查询操作;public List query() throws SQLExceptionConnection conn=DBUtil.getConnection();/链接数据库Statement stmt=conn.createStatement();String sql=select * from

8、 productdate;ResultSet rs=stmt.executeQuery(sql);List productList=new ArrayList();ProductDate productDate=null;while(rs.next()productDate=new ProductDate();productDate.setProductID(rs.getInt(ProductID);productDate.setProductName(rs.getString(productName);productDate.setProductSpecifications(rs.getSt

9、ring(productSpecifications);productList.add(productDate);return productList;/对产品库进行ID查询public List queryEvery( int PID) throws SQLExceptionConnection conn=DBUtil.getConnection();/链接数据库String sql=select * from productdate where productID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1

10、, PID);ResultSet rs=pst.executeQuery();List productList=new ArrayList();ProductDate productDate=null;while(rs.next()productDate=new ProductDate();productDate.setProductID(rs.getInt(ProductID);productDate.setProductName(rs.getString(productName);productDate.setProductSpecifications(rs.getString(produ

11、ctSpecifications);productList.add(productDate);return productList;public void addProduct(int PID,String PNAME,String PSPECIFICATIONS) throws SQLException/对数据库的添加操作Connection conn=DBUtil.getConnection();/链接数据库String sql=insert into productdate values ( ?,?,?); PreparedStatement pst=conn.prepareStatem

12、ent(sql);pst.setInt(1, PID);pst.setString(2, PNAME);pst.setString(3, PSPECIFICATIONS);pst.executeUpdate();/输入你要更新产品的ID,进行修改你的产品信息public void updateProduct(int PID,String PNAME,String PSPECIFICATIONS) throws SQLException/更新Connection conn=DBUtil.getConnection();/链接数据库String sql=update productdate set

13、 productName=? , productSpecifications=? where productID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setString(1, PNAME);pst.setString(2, PSPECIFICATIONS);pst.setInt(3, PID);pst.executeUpdate();/输入你要删除的产品的ID进行删除操作public void delProduct(int PID) throws SQLException/删除Connection conn=DBUtil

14、.getConnection();/链接数据库String sql=delete from productdate where productID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1, PID);pst.executeUpdate();4.2 销售员信息管理功能实现:通过使用SQL语句对数据库的操作进行对销售员信息的管理代码实现:package ProductSystemOne;import java.sql.Connection;import java.sql.PreparedStatement;im

15、port java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class SalespersonDateDao /对产品库的查询操作;public List query() throws SQLExceptionConnection conn=DBUtil.getConnection();/链接数据库Statement stmt=conn

16、.createStatement();String sql=select * from salespersondate;ResultSet rs=stmt.executeQuery(sql);List saleSpersonList=new ArrayList(); SalespersonDate saleSpersonDate=null;while(rs.next()saleSpersonDate=new SalespersonDate();saleSpersonDate.setSalespersonID(rs.getInt(salespersonID);saleSpersonDate.se

17、tSalespersonName(rs.getString(salespersonName);saleSpersonDate.setSalespersonPhone(rs.getInt(salespersonPhone);saleSpersonList.add(saleSpersonDate);return saleSpersonList;/对产品库进行ID查询public List queryEvery( int SID) throws SQLExceptionConnection conn=DBUtil.getConnection();/链接数据库String sql=select * f

18、rom salespersondate where salespersonID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1, SID);ResultSet rs=pst.executeQuery();List saleSpersonList=new ArrayList(); SalespersonDate saleSpersonDate=null;while(rs.next()saleSpersonDate=new SalespersonDate();saleSpersonDate.setSalesperson

19、ID(rs.getInt(salespersonID);saleSpersonDate.setSalespersonName(rs.getString(salespersonName);saleSpersonDate.setSalespersonPhone(rs.getInt(salespersonPhone);saleSpersonList.add(saleSpersonDate);return saleSpersonList;/对销售员库的添加public void addSaleperson(int SID,String SNAME,int SPHONE) throws SQLExcep

20、tion/对数据库的添加操作Connection conn=DBUtil.getConnection();/链接数据库String sql=insert into salespersondate values ( ?,?,?); PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1, SID);pst.setString(2, SNAME);pst.setInt(3, SPHONE);pst.executeUpdate();/输入你要更新销售员的ID,进行修改你的产品信息public void updateSalespers

21、on(int SID,String SNAME,int SPHONE) throws SQLException/更新Connection conn=DBUtil.getConnection();/链接数据库String sql=update salespersondate set salespersonName=? ,salespersonPhone=? where salespersonID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setString(1, SNAME);pst.setInt(2, SPHONE);pst.

22、setInt(3, SID);pst.executeUpdate();/输入你要删除的销售员的ID进行删除操作public void delProduct(int SID) throws SQLException/删除Connection conn=DBUtil.getConnection();/链接数据库String sql=delete from salespersondate where salespersonID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1, SID);pst.executeUpdate

23、();4.3销售记录信息管理功能实现:通过使用SQL语句对数据库的操作进行对销售记录信息的管理代码实现:package ProductSystemOne;import java.sql.*;import java.util.*;public class SoldNoteDateDao public List query() throws SQLException Connection conn=DBUtil.getConnection();/链接数据库 Statement stmt =conn.createStatement(); String sql=select * from soldno

24、tedate ; ResultSet rs=stmt.executeQuery(sql); List soldNoteList=new ArrayList(); SoldNoteDate soldNoteDate=null; while(rs.next() soldNoteDate =new SoldNoteDate(); soldNoteDate.setSalesDate(rs.getString(salesDate); soldNoteDate.setSalesID(rs.getInt(salesID); soldNoteDate.setSalesPrice(rs.getString(sa

25、lesPrice); soldNoteDate.setSalesVolumes(rs.getString(salesVolumes); soldNoteDate.setProductID(rs.getInt(productID); soldNoteList.add(soldNoteDate); return soldNoteList; public List queryEvery(int SID) throws SQLException Connection conn=DBUtil.getConnection(); String sql=select * from soldnotedate w

26、here salesID=? ; PreparedStatement pst=conn.prepareStatement(sql); pst.setInt(1, SID); ResultSet rs=pst.executeQuery(); List soldNoteList=new ArrayList(); SoldNoteDate soldNoteDate=null; while(rs.next() soldNoteDate =new SoldNoteDate(); soldNoteDate.setSalesDate(rs.getString(salesDate); soldNoteDate

27、.setProductID(rs.getInt(productID); soldNoteDate.setSalesID(rs.getInt(salesID); soldNoteDate.setSalesPrice(rs.getString(salesPrice); soldNoteDate.setSalesVolumes(rs.getString(salesVolumes); soldNoteList.add(soldNoteDate); return soldNoteList; /售出产品 public void sell(int SALESID,String salesPrice,Stri

28、ng salesVolumes,int salesDate,int PID) throws SQLException Connection conn=DBUtil.getConnection(); String sql=insert into soldnotedate values ( ?,?,?,?,?) ; PreparedStatement pst=conn.prepareStatement(sql); pst.setInt(1, SALESID); pst.setString(2, salesVolumes); pst.setString(3, salesPrice); pst.set

29、Int(4,salesDate); pst.setInt(5, PID); pst.executeUpdate(); /更新销售数据的销售员信息 public void updateSalesperson(int PID,int SALESID) throws SQLException Connection conn=DBUtil.getConnection(); String sql=update soldnotedate set salesID=? where productID=? ; PreparedStatement pst=conn.prepareStatement(sql); p

30、st.setInt(1, SALESID); pst.setInt(2, PID); pst.executeUpdate(); /删除销售数据的信息 public void deleSalesDate(int PID) throws SQLException Connection conn=DBUtil.getConnection(); String sql=delete from soldnotedate where productID=?; PreparedStatement pst=conn.prepareStatement(sql); pst.setInt(1, PID); pst.e

31、xecuteUpdate(); 5 系统测试及调试5.1 产品信息管理1.进入主菜单后,输入“1”进入产品信息管理界面如下图2.在产品信息管理菜单下,输入“1”显示所有的产品信息如下图3.在产品信息管理菜单下,输入“2”和产品的ID进行产品信息查询如下图:4.在产品信息管理菜单下,输入“3”和相关信息进行对产品信息的修改如下图:5.在产品信息管理菜单下,输入“4”和相关信息进行添加产品信息的操作如下图6.在产品信息管理菜单下,输入“5”和ID进行对产品信息的删除如下图 5.2 销售员信息管理1.在主菜单下,输入“2”进入销售员信息管理菜单2.在销售员信息管理菜单下,输入“1”显示全部销售员信息

32、如下图:3.在销售员信息管理菜单下,输入“2”和ID进行对销售员信息的查询如下图:4.在销售员信息管理菜单下,输入“3”和相关信息进行对销售员信息的修改如下图:4.在销售员信息管理菜单下,输入“4”和相关信息进行对销售员信息的添加如下图:5.在销售员信息管理菜单下,输入“5”和相关信息进行对销售员信息的修改如下图:5.3 产品记录信息管理1.在主菜单下,输入“3”进入销售记录信息管理菜单2.在销售记录信息管理菜单下,输入“1”显示全部销售记录信息如下:3.在销售记录信息管理菜单下,输入“2”和相关信息添加销售记录信息如下图:4.在销售记录信息管理菜单下,输入“3”和相关信息更新销售记录信息如下

33、图:5.在销售记录信息管理菜单下,输入“4”和相关信息更新销售记录信息如下图:6 结束语本次操作实训虽然很辛苦,但实在是受益匪浅。在操作实训过程中碰到了很多问题,刚开始的时候,还真不知道从哪里下手。但最终在图书、同学和老师的帮助下都得到了解决,让我学会了好多书本上没有的东西,通过本次操作实训我也能将课本上的知识融会贯通,起到了很好的辅助学习的效果,但是我发现我学到的知识比整整一个学期学到的都多。理论和实践的相结合是学习最有效的方法。在实验的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,这次操作实训之后,一定把以前所学过的知识重新温故。 通过这次操作实训使我懂得了

34、理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。最后,要感谢学校为我们提供这次实验机会,也要感谢老师的教导,帮助与支持。7 参考文献书名 Java编程思想(第4版)作者 Bruce Eckel 出版社 机械工业出版社 出版时间 2007年6月1日8 附录 主要代码:AddProductDateSystemAction.java:package ProductSystemOne;import java.sql.SQLException;import java.util.S

35、canner;public class AddProductDateSystemAction public AddProductDateSystemAction() ProductDao productDao=new ProductDao(); System.out.println(请你输入要添加产品的信息:); Scanner sc=new Scanner(System.in); System.out.println(请你输入产品的ID:); int PID=sc.nextInt(); System.out.println(请你输入 产品的名称:); String PNAME=sc.next

36、(); System.out.println(请你输入产品的规格:); String PSPECIFICATIONS=sc.next(); try productDao.addProduct(PID, PNAME, PSPECIFICATIONS); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();AddSalepersonSystemAction.java:package ProductSystemOne;import java.sql.SQLException;import java.u

37、til.Scanner;public class AddSalepersonSystemAction public AddSalepersonSystemAction() SalespersonDateDao salespersonDateDao=new SalespersonDateDao();System.out.println(请输入你要添加的销售员的信息:);Scanner sc=new Scanner(System.in);System.out.println(请你输入销售员的ID:);int SID=sc.nextInt();System.out.println(请你输入销售员的名

38、字:);String SNAME=sc.next();System.out.println(请你输入销售员的电话号码:);int SPHONE=sc.nextInt();try salespersonDateDao.addSaleperson(SID, SNAME, SPHONE); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();AddSellSoldNoteDateDaoSystemAction.java:package ProductSystemOne;import java.sql.

39、SQLException;import java.util.Scanner;public class AddSellSoldNoteDateDaoSystemAction public AddSellSoldNoteDateDaoSystemAction() SoldNoteDateDao soldNoteDateDao=new SoldNoteDateDao();System.out.println(输入你要添加的销售记录数据:);Scanner scanner =new Scanner(System.in);System.out.println(请你输入销售产品的ID:);int PID=

40、scanner.nextInt();System.out.println(请你输入销售单价:);String salesPrice=scanner.next();System.out.println(请你输入销售产品的数量:);String salesVolumes=scanner.next();System.out.println(请你输入销售日期:);int salesDate=scanner.nextInt();System.out.println(请你输入销售员的ID:);int SALESID=scanner.nextInt();try soldNoteDateDao.sell(SA

41、LESID, salesPrice, salesVolumes, salesDate, PID); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();AllQueryProductSystemAction.java:package ProductSystemOne;import java.sql.SQLException;import java.util.*;public class AllQueryProductSystemAction public AllQueryProductSyste

42、mAction() ProductDao productDao=new ProductDao(); List listProductDao;try listProductDao = productDao.query();Iterator pi=listProductDao.iterator(); while(pi.hasNext() ProductDate next =(ProductDate)pi.next(); int productID=next.getProductID(); String productName=next.getProductName(); String productSpecifications=next.getProductSpecifications(); System.out.println(产品的ID:+productID+ 产品的名称: +productName+ 产品的规格:+productSpecifications)

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服