JAVA课程设计产品销售管理系统_第1页
JAVA课程设计产品销售管理系统_第2页
JAVA课程设计产品销售管理系统_第3页
JAVA课程设计产品销售管理系统_第4页
JAVA课程设计产品销售管理系统_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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 系统软硬件环境本程序所适用的计算机系统软硬件环境要求为:硬件环境: Pentium?III?500以上 内存: 256M?软件环境: Windows XP? 及以上3.4 数据结构设计客户信息数据结构类型如下:销售记录包括销售日期、销售产品ID、 售出数量、单价、 销售员ID,salesDate ;productID salesVolumessalesPricesalesID ;定义方式如下:privateStringprivateIntegerprivateStringprivateStringprivateIn

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

7、信息管理功能实现:通过使用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 produ

8、ctdate;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.getString(p

9、roductSpecifica tions);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(product

11、Specifica tions);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.prepareStateme

12、nt(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=DBUt

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

15、() throws SQLExceptionConnection conn=DBUtil.getConnection();/ 链接数据库Statement stmt=conn.createStatement();String sql=select * from salespersondate;ResultSet rs=stmt.executeQuery(sql);List saleSpersonList=new ArrayList();SalespersonDate saleSpersonDate=null;while(rs.next()saleSpersonDate=new Salesper

16、sonDate();saleSpersonDate.setSalespersonID(rs.getInt(salespersonID);saleSpersonDate.setSalespersonName(rs.getString(salespersonName) ;saleSpersonDate.setSalespersonPhone(rs.getInt(salespersonPhone); saleSpersonList.add(saleSpersonDate);return saleSpersonList;/ 对产品库进行ID 查询public List queryEvery( int

17、SID) throws SQLExceptionConnection conn=DBUtil.getConnection();/ 链接数据库whereString sql=select * from salespersondate salespersonID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1, SID);ResultSet rs=pst.executeQuery();List saleSpersonList=new ArrayList();SalespersonDate saleSpersonDate

18、=null;while(rs.next()saleSpersonDate=new SalespersonDate();saleSpersonDate.setSalespersonID(rs.getInt(salespersonID);saleSpersonDate.setSalespersonName(rs.getString(salespersonName) ;saleSpersonDate.setSalespersonPhone(rs.getInt(salespersonPhone);saleSpersonList.add(saleSpersonDate);return saleSpers

19、onList;/ 对销售员库的添加public void addSaleperson(int SID,String SNAME,int SPHONEt)hrows SQLException/ 对数据库的添加操作Connection conn=DBUtil.getConnection();/ 链接数据库String sql=insert into salespersondate values ( ?,?,?);PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1, SID);pst.setString(2, SNAME);ps

20、t.setInt(3, SPHONE);pst.executeUpdate();输入你要更新销售员的ID,进行修改你的产品信息public void updateSalesperson(int SID,String SNAME,int SPHONE) throws SQLException/ 更新Connection conn=DBUtil.getConnection();/ 链接数据库Stringsql=updatesalespersondatesetsalespersonName=? ,salespersonPhone=? where salespersonID=?;PreparedSta

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

22、nID=?;PreparedStatement pst=conn.prepareStatement(sql);pst.setInt(1, SID);pst.executeUpdate();4.3 销售记录信息管理管理代码实现:package ProductSystemOne;import java.sql.*;import java.util.*;public class SoldNoteDateDao public List query() throws SQLExceptionConnection conn=DBUtil.getConnection();/链接数据库Statement st

23、mt =conn.createStatement();String sql=select * from soldnotedate ;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(s

24、alesID);soldNoteDate.setSalesPrice(rs.getString(salesPrice);soldNoteDate.setSalesVolumes(rs.getString(salesVolumes);soldNoteDate.setProductID(rs.getInt(productID);soldNoteList.add(soldNoteDate);return soldNoteList;public List queryEvery(int SID) throws SQLExceptionConnection conn=DBUtil.getConnectio

25、n();String sql=select * from soldnotedate where 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

26、.getString(salesDate);soldNoteDate.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 SA

27、LESID,String salesPrice,String salesVolumes,int salesDate,int PID) throws SQLExceptionConnection 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

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

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

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

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

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

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

34、ddProductDateSystemAction。ProductDao productDao=new ProductDao();Scanner sc=new Scanner(System.in);int PID=sc.nextInt();String PNAME=sc.next();String PSPECIFICATIONS=sc.next();try productDao.addProduct(PID, PNAME, PSPECIFICATIONS); catch (SQLException e) / TODO Auto-generated catch block e.printStac

35、kTrace();AddSalepersonSystemAction.java:package ProductSystemOne;public class AddSalepersonSystemAction public AddSalepersonSystemAction。SalespersonDateDao salespersonDateDao=new SalespersonDateDao();Scanner sc=new Scanner(System.in);int SID=sc.nextInt();String SNAME=sc.next();int SPHONE=sc.nextInt(

36、);try salespersonDateDao.addSaleperson(SID, SNAME, SPHONE); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();AddSellSoldNoteDateDaoSystemAction.java:package ProductSystemOne;public class AddSellSoldNoteDateDaoSystemAction public AddSellSoldNoteDateDaoSystemAction() SoldNot

37、eDateDao soldNoteDateDao=new SoldNoteDateDao();Scanner scanner =new Scanner(System.in);int PID=scanner.nextInt();String salesPrice=scanner.next();String salesVolumes=scanner.next();int salesDate=scanner.nextInt();int SALESID=scanner.nextInt();try soldNoteDateDao.sell(SALESID, salesPrice, salesVolume

38、s, salesDate, PID); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();AllQueryProductSystemAction.java:package ProductSystemOne;import java.util.*;public class AllQueryProductSystemAction public AllQueryProductSystemAction() ProductDao productDao=new ProductDao();List listP

39、roductDao;try listProductDao = productDao.query();Iterator pi=listProductDao.iterator();while(pi.hasNext()ProductDate next =(ProductDate)pi.next();int productID=next.getProductID();String productName=next.getProductName();StringproductSpecifications=next.getProductSpecifications(); catch (SQLExcepti

40、on e) / TODO Auto-generated catch block e.printStackTrace();AllQuerySalespersonSystemAction.java:package ProductSystemOne;import java.util.*;/ 测试public class AllQuerySalespersonSystemAction public AllQuerySalespersonSystemAction() SalespersonDateDao salespersonDateDao=new SalespersonDateDao(); List

41、listSalespersonDateDao;try listSalespersonDateDao = salespersonDateDao.query();Iterator si= listSalespersonDateDao.iterator();while(si.hasNext()SalespersonDate next = (SalespersonDate)si.next();int salespersonID = next.getSalespersonID();String salespersonName=next.getSalespersonName();int salespers

42、onPhone=next.getSalespersonPhone(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace();AllQuerySoldNoteSystemAction.java:package ProductSystemOne;/* private String salesDate;private Integer productID;private String salesVolumes;private String salesPrice;private Integer sale

43、sID;*/public class AllQuerySoldNoteSystemAction public AllQuerySoldNoteSystemAction() SoldNoteDateDao soldNoteDateDao=new SoldNoteDateDao();List listSoldNoteDateDao;try listSoldNoteDateDao = soldNoteDateDao.query();Iterator si=listSoldNoteDateDao.iterator();while(si.hasNext()SoldNoteDate next=(SoldN

44、oteDate)si.next();String salesDate=next.getSalesDate();int productID=next.getProductID();String salesVolumes=next.getSalesVolumes();String salesPrice=next.getSalesPrice(); int salesID=next.getSalesID(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace();DBUtil.java:package

45、ProductSystemOne;import java.sql.*;public class DBUtil private static final String NAME=root;private static final String PASSWORD=root;private static Connection conn=null;statictry conn=DriverManager.getConnection(URL,NAME,PASSWORD); catch (ClassNotFoundException e) / TODO Auto-generated catch block

46、 e.printStackTrace(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace();public static Connection getConnection() return conn;DeleProductDateSystemAction.java:package ProductSystemOne;public class DeleProductDateSystemAction public DeleProductDateSystemAction() ProductDao p

47、roductDao=new ProductDao();Scanner sc=new Scanner(System.in);int PID =sc.nextInt();try productDao.delProduct(PID); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace();DeleSalesDateSystemAction.java:package ProductSystemOne;public class DeleSalesDateSystemAction public DeleSa

48、lesDateSystemAction() SoldNoteDateDao soldNoteDateDao=new SoldNoteDateDao();Scanner scanner =new Scanner (System.in);int PID=scanner.nextInt();try soldNoteDateDao.deleSalesDate(PID); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace();DeleSalespersonSystemAction.java:package

49、 ProductSystemOne;public class DeleSalespersonSystemAction public DeleSalespersonSystemAction() SalespersonDateDao salespersonDateDao=new SalespersonDateDao(); Scanner sc=new Scanner(System.in);int SID=sc.nextInt();try salespersonDateDao.delProduct(SID); catch (SQLException e) / TODO Auto-generated

50、catch block e.printStackTrace();EveryProductDaoSystemAction.java:package ProductSystemOne;public class EveryProductDaoSystemAction public EveryProductDaoSystemAction() ProductDao productDao=new ProductDao();Scanner sc=new Scanner(System.in);int PID =sc.nextInt();List listproductDao;try listproductDa

51、o = productDao.queryEvery(PID);Iterator pi=listproductDao.iterator();ProductDate next=(ProductDate)pi.next();String PNAME=next.getProductName();String PSPECIFICATIONS=next.getProductSpecifications(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();nEveryQuerySalespersonSy

52、stemAction.java:package ProductSystemOne;public class EveryQuerySalespersonSystemAction public EveryQuerySalespersonSystemAction() SalespersonDateDao salespersonDateDao=new SalespersonDateDao(); Scanner sc=new Scanner(System.in);int SID=sc.nextInt();List listSalespersonDateDate;try listSalespersonDa

53、teDate = salespersonDateDao.queryEvery(SID);Iterator si= listSalespersonDateDate.iterator();SalespersonDate next = (SalespersonDate)si.next();int salespersonID = next.getSalespersonID();String salespersonName=next.getSalespersonName();int salespersonPhone=next.getSalespersonPhone(); catch (SQLExcept

54、ion e) / TODO Auto-generated catch block e.printStackTrace();EveryQuerySoldNoteDateDaoSystemAction.java:package ProductSystemOne;public class EveryQuerySoldNoteDateDaoSystemAction public EveryQuerySoldNoteDateDaoSystemAction() SoldNoteDateDao soldNoteDateDao=new SoldNoteDateDao();Scanner sc=new Scanner (System.in);int SID=sc.nextInt();List listSoldNoteDateDao;try listSoldNoteDateDao = soldNoteDateDao.queryEvery(SID);Iterator si=listSoldNoteDateDao.iterator();SoldNoteDate next=(SoldNoteDate)si.next();String salesDat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论