java课程设计商场库存管理系统

合集下载

基于java的商城管理系统设计与实现任务书

基于java的商城管理系统设计与实现任务书

【任务书】一、任务背景随着电子商务的快速发展,商城管理系统已成为各类电子商务评台中不可或缺的一部分。

基于Java的商城管理系统在系统性能、功能丰富性和稳定性上有着较大优势,因此需要设计并实现一套高质量的商城管理系统。

二、任务目标1. 设计并实现一套基于Java的商城管理系统,包括商城前台展示、商品管理、订单管理、用户管理等模块;2. 保证系统的性能和稳定性,能够支持大规模用户并发访问;3. 提供良好的用户体验,界面美观、易用性高;4. 具备完善的权限管理,支持管理员和普通用户的不同操作;5. 实现良好的扩展性和灵活性,方便后续功能的增加和系统的升级。

三、任务内容1. 分析商城管理系统的需求,包括用户需求、系统功能需求、性能需求等;2. 设计系统的整体架构,包括系统模块划分、模块间的交互关系以及数据库设计等;3. 实现商城管理系统的前后台功能,包括商品展示、购物车管理、订单管理、用户管理等;4. 进行系统性能测试,确保系统可以支持大规模用户并发访问;5. 进行用户体验测试,优化系统界面,提高系统的易用性;6. 设计并实现系统的权限控制,确保管理员和普通用户的权限合理分配和管理;7. 设计系统的扩展性方案,包括后续功能的添加以及系统的升级。

四、任务计划1. 需求分析阶段:3天- 收集用户需求,分析系统功能需求;- 确定系统的性能需求和用户体验要求。

2. 系统设计阶段:7天- 设计系统的整体架构,包括模块划分和数据库设计;- 确定系统的前后台功能和界面设计。

3. 系统实现阶段:15天- 实现商城管理系统的前后台功能;- 进行系统性能测试和用户体验测试。

4. 权限管理设计阶段:3天- 设计系统的权限控制方案,确保合理的权限分配和管理。

5. 系统扩展性设计阶段:5天- 设计系统的扩展性方案,包括后续功能的添加以及系统的升级。

五、交付要求1. 提交商城管理系统的需求分析文档,包括用户需求分析和功能需求分析;2. 提交商城管理系统的架构设计文档,包括系统整体架构设计和数据库设计;3. 提交商城管理系统的实现代码和相关测试报告;4. 提交商城管理系统的权限管理设计文档;5. 提交商城管理系统的扩展性设计文档。

毕业设计(论文)-基于JAVA的商品库存管理系统设计与实现模板

毕业设计(论文)-基于JAVA的商品库存管理系统设计与实现模板

(2009届)本科毕业设计(论文)商品库存管理系统2009 年 4 月摘要本论文着重论述了库存管理系统开发时的主要设计思想及系统实现的详细过程及使用方法。

介绍了库存管理系统的主要功能。

系统结构严谨、性能稳定、使用方便。

它可以运行Win98/2000 / NT/XP/2003系统。

本系统为全中文界面,功能全,易操作。

系统的操作方式、界面均为Win98风格。

系统中具有强大的操作员权限、密码管理等功能模块,确保系统运行安全。

强大的查询和报表功能,全面、及时地反映当前库存状况。

本论文采用了面向对象开发的设计方法。

在WindowsXP操作系统环境下,应用SQL Server 2000数据库以及Java可视化程序设计软件所开发的库存管理系统。

本系统对于库存管理方面所遇到的各种问题,如工作量大,数据更新不及时,可靠性低等都做出详细的解决方案,本系统是以适应当前计算机信息管理的需要,紧密结合了库存管理在计算机信息管理方面的应用,实现了管理人员对库存的现代化管理,从而进一步提高了库存管理的工作效率。

关键词:库存管理,数据库,JavaABSTRACTThis paper focuses on the development of the inventory management system at the main design concepts and systems to achieve the detailed process and use. Inventory management system on the main functions. Well-structured system, stable performance, ease of use. It can run Win98/2000 / NT/XP/2003 system. The system for the whole Chinese language interface, full-function, easy to operate. The operating system, both Win98 style interface. System operators have a powerful authority, password management modules to ensure safe operation. Powerful query and reporting, comprehensive and timely manner to reflect the current inventory situation.In this paper, using object-oriented development of the design. In WindowsXP operating system environment, the application of SQL Server 2000 databases and Java programming visualization software developed by the inventory management system.The system for inventory management encountered by various problems, such as heavy workload, update data is not timely, reliable and so low a detailed solution, the system is adapt to the current computer information management needs, in close connection with The inventory management in computer information management application, and the management of inventories of modern management, so as to further enhance the efficiency of inventory management.Key words:Inventory management,database,Java目录第1章概述 (1)1.1课题背景介绍 (1)1.1.1课题开发背景 (1)1.1.2 课题开发意义 (1)1.2课题开发目标 (2)第2章系统运行环境及系统开发技术 (3)2.1 系统运行环境 (3)2.1.1 硬件环境 (3)2.1.2 软件开发环境 (3)2.2 系统开发技术 (3)2.2.1 Java简介 (3)2.2.2 SQL Server 2000 数据库 (5)第3章系统分析与设计 (7)3.1 系统可行性分析 (7)3.1.1 经济可行性 (7)3.1.2 操作可行性 (7)3.1.3技术可行性 (7)3.2 系统需求分析 (7)3.3 总体功能设计 (8)3.3.1 系统功能模块图 (8)3.3.2 总体功能流程图 (10)第4章数据库设计 (12)4.1 数据库设计思想 (12)4.2 系统E-R图 (13)4.3 数据库表设计 (13)第五章系统详细设计与实现 (20)5.1系统登录界面设计 (20)5.2 系统主界面的设计 (20)5.3 系统主要功能实现 (22)5.3.1 进货管理 (22)5.3.2 出货管理 (23)5.3.3库存管理 (26)5.3.4 统计报表 (29)5.3.5 日常管理 (33)5.4 数据库连接 (34)第6章系统测试及结果分析 (36)6.1 测试综述 (36)6.1.1 软件测试综述 (36)6.1.2 数据库测试 (37)6.2 测试实例 (37)结论 (38)参考文献 (39)致谢 (40)第1章概述1.1课题背景介绍1.1.1课题开发背景商品库存管理系统是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以商品库存管理系统应该能够为用户提供充足的信息和快捷的查询手段。

java仓库管理系统课程设计源代码

java仓库管理系统课程设计源代码

一、项目背景介绍1.1 仓库管理系统的重要性仓库管理系统是一种对仓库内物品进行全面管理和监控的信息系统。

在现代物流管理中,仓库管理系统扮演着至关重要的角色,可以提高仓库的利用率、降低存货成本、提高物流效率,为企业节省大量人力和物力资源,是企业管理中不可或缺的一部分。

1.2 项目意义本课程设计拟设计并实现一套基于Java语言的仓库管理系统,旨在通过应用软件技术和信息管理技术,实现对进销存等多类业务流程的自动化管理,并在实际操作中验证其运行效果和实用性,为学生提供一种将所学知识应用于实践的机会。

二、系统功能需求2.1 基本功能1) 系统登入:要求用户输入用户名和密码进行登入验证;2) 信息录入:包括商品信息、入库信息、出库信息等的录入;3) 信息查询:可以根据商品编号、名称、类别等条件查询商品信息;4) 库存管理:可以实时查看库存状况,并进行库存的盘点与调剂;5) 报表输出:可以输出商品进销存报表,方便管理人员进行决策;6) 权限管理:不同用户具有不同的权限,管理员具有对系统进行设置的权限。

2.2 进一步功能1) 供应商管理:可以录入供应商信息,并进行供应商的评价和选择;2) 客户管理:可以录入客户信息,并对客户进行分类管理;3) 交易管理:支持交易的生成、记录和统计。

三、技术选型和开发环境3.1 技术选型本系统采用Java语言作为主要开发语言,使用MySQL作为数据库,前端采用Swing技术进行界面设计,后端采用JDBC进行数据传输和交互。

3.2 开发工具1) 开发环境:Eclipse2) 数据库工具:Navicat3) 版本管理工具:Git4) 项目管理工具:Maven四、系统设计4.1 系统架构设计本系统采用MVC(Model-View-Controller)架构,将业务逻辑、数据表示和用户界面分离,使得系统更加易于维护和升级。

4.2 数据库设计1) 商品表:包括商品编号、名称、类别、进价、售价、库存等字段;2) 入库表:包括入库单号、商品编号、数量、日期等字段;3) 出库表:包括出库单号、商品编号、数量、日期等字段;4) 用户表:包括用户名、密码、权限等字段。

库存管理系统毕业设计

库存管理系统毕业设计

库存管理系统毕业设计
库存管理系统是一个基于计算机技术的软件系统,它能够帮助企业或组织妥善管理和控制库存,提高库存管理效率和准确性。

本毕业设计的主要目的是设计和实现一个库存管理系统,从而帮助企业或组织更好地管理其库存。

库存管理系统的功能包括:商品信息管理、库存信息管理、进货信息管理、销售信息管理、库存调拨管理、库存盘点管理等。

通过实现这些功能,库存管理系统能够为企业或组织提供简单、快捷、准确的库存管理服务。

本毕业设计采用的技术为Java语言和MySQL数据库。

Java语言具有跨平台性、面向对象性、易学易用等优点,而MySQL数据库具有高效、稳定、灵活等优点。

通过使用这两种技术,本毕业设计能够实现一个高效、稳定、灵活的库存管理系统。

本毕业设计的具体实现包括以下步骤:
1.需求分析:根据企业或组织的实际需求,确定库存管理系统的功能和特点。

2.系统设计:根据需求分析,设计库存管理系统的结构和架构,确定所需的数据库表和字段。

3.系统实现:使用Java语言和MySQL数据库,实现库存管理系统的各个功能模块。

4.系统测试:对库存管理系统进行测试,确保其功能和特点符合需求分析中所确定的要求。

通过以上步骤,本毕业设计能够实现一个高效、稳定、灵活的库存管理系统,为企业或组织提供简单、快捷、准确的库存管理服务。

JAVA课程设计--进销存管理系统

JAVA课程设计--进销存管理系统
方便用户对产品基本信息,客户信息,供应商信息进行多条件查询,增加,修改,删除.
5.2.2 实现原理
用hibernate语句里的查询、增加、修改、删除语句,对数据库里对应的产品信息表,供应商信息表,客户信息表进行相应的操作.
图10产品基本信息管理界面
图11客户信息管理界面
图12供应商信息管理界面
5。2。3核心代码
因此从技术方面讲开发此系统是可行的。
3。1.2经济可行性分析
企业进销存管理系统从中小企业的实际出发,可有效地管理企业的进销存情况,并降低企业运营成本、及时调整营销策略、提高库房的利用率.当前许多中小型企业都使用人工管理方式(即纸和笔)来管理企业的进销存,这样的管理方式既困难又浪费时间和成本,并且容易出现漏账、差账的情况,因此中小企业应该向大型企业那样采用先进的管理方式,提高企业效率、降低企业运营成本。
进销存管理系统
摘要
进销存系统是在研究了SAP R/3系统运作的的基础之上,结合了中国的国情以及开发人员能力所研制开发的一套进销存系统,这套系统将用户设定为存在进销存业务的企业,即此用户并不负责生产以及组装,而仅涉及到对商品的采购,对商品的存储,以及最终对商品的销售,在这一过程中实现商品的增值,以及企业利润和资本的增加。系统包括了基本信息,进货管理,销货管理,存货管理以及系统管理五大模块来实现其具体功能.
4.1。1模块设计
整个系统的模块划分如下:
图7各模块在导航栏的体现
4。2系统E—R图
图8进销存管理系统E—R图
4.3数据库设计
本系统采用微软公司的SQL Server2000数据库管理系统,下面就该系统的数据库表做如下设计(主键都是自动增长):产品基本信息表:产品的信息,与销售,库存,进货产品之间的信息一一对应,product_id用来标记产品编号,产品ID不一样则无法进行该品的进货,销售,库存功能,表结构见附录一

库存管理系统设计报告

库存管理系统设计报告

库存管理系统设计报告1. 引言库存管理是企业运营中一个重要的环节,它涉及到商品的采购、销售和仓储等方面。

为了提高库存管理的效率和精度,很多企业开始引入计算机系统来进行自动化管理。

本报告将介绍一个基于计算机的库存管理系统的设计和实施。

2. 功能需求库存管理系统的主要功能需求如下:1. 商品信息管理:包括商品的基本信息、库存信息、采购信息和销售信息等。

2. 采购管理:记录采购商品的供应商信息、数量和价格等。

3. 销售管理:记录销售商品的客户信息、数量和价格等。

4. 库存管理:实时更新商品的库存数量,计算可用库存和预警库存。

5. 报表生成:能够生成各类库存报表,如库存清单、销售报表和采购报表等。

3. 技术选型根据功能需求,我们选择以下技术来实现库存管理系统:1. 编程语言:Java2. 数据库:MySQL3. 前端开发:HTML、CSS、JavaScript4. 后端开发:Spring框架4. 系统设计4.1 数据库设计库存管理系统的数据库包括以下主要表格:1. 商品表(product):存储商品的基本信息,如商品编号、名称和价格等。

2. 采购表(purchase):记录采购商品的信息,包括供应商、采购数量和采购日期等。

3. 销售表(sales):记录销售商品的信息,包括客户、销售数量和销售日期等。

4. 库存表(inventory):实时记录商品的库存数量。

5. 报表表(report):存储各类报表的生成记录。

4.2 系统架构库存管理系统的系统架构如下:![系统架构图](system_architecture.png)- 前端界面:通过浏览器与用户进行交互,展示商品信息、输入采购销售等操作。

- 前端逻辑层:对用户输入进行验证、处理,并发起与后端的请求。

- 后端处理层:接收前端请求,对请求进行处理,并调用数据库操作层进行数据查询、插入、更新等操作。

- 数据库操作层:负责与数据库进行交互,执行数据库操作。

java课程设计超市收银系统

java课程设计超市收银系统

java课程设计超市收银系统一、课程目标知识目标:1. 让学生掌握Java语言面向对象编程的基本概念,包括类、对象、继承、封装等;2. 使学生了解超市收银系统的业务流程,理解数据存储、处理和界面设计的相关知识;3. 帮助学生掌握Java集合框架、异常处理、文件操作等基本技能。

技能目标:1. 培养学生运用Java语言设计并实现超市收银系统的能力;2. 提高学生分析问题、解决问题的能力,使其能够根据实际需求进行系统设计;3. 培养学生团队协作、沟通交流的能力,以便在项目开发过程中更好地与他人合作。

情感态度价值观目标:1. 激发学生对编程的兴趣,培养其主动学习和探究的精神;2. 培养学生具备良好的编程习惯,注重代码规范和优化;3. 增强学生的实际操作能力,使其认识到理论知识与实践相结合的重要性;4. 培养学生的创新意识,鼓励他们在项目设计中提出新思路、新方法。

分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 学生能够独立完成Java面向对象编程的基础知识学习,并通过相关练习巩固;2. 学生能够根据超市收银系统的实际需求,设计合理的类和对象,完成系统架构;3. 学生能够运用所学知识,实现超市收银系统的功能模块,如商品管理、购物车、结账等;4. 学生能够针对项目进行调试和优化,确保系统的稳定性和性能;5. 学生在项目开发过程中,能够与团队成员保持良好的沟通与协作,共同完成项目任务。

二、教学内容根据课程目标,教学内容主要包括以下几部分:1. Java面向对象编程基础:- 类与对象- 继承与多态- 封装与抽象- 接口与实现2. 超市收银系统业务流程分析:- 系统需求分析- 数据存储设计- 功能模块划分3. Java核心技术应用:- Java集合框架- 异常处理- 文件操作- 图形用户界面设计4. 项目实践:- 商品管理模块- 购物车模块- 结账模块- 系统测试与优化教学大纲安排如下:1. 第1周:Java面向对象编程基础,完成相关练习;2. 第2周:分析超市收银系统业务流程,进行系统设计;3. 第3周:学习Java核心技术应用,为项目实践打下基础;4. 第4-6周:分组进行项目实践,完成各功能模块开发;5. 第7周:项目测试、优化与总结。

商品仓库管理系统数据库设计

商品仓库管理系统数据库设计
客户可以自己进行注册,也可以由管理员分配。商场中的每个客户都分配有唯一的编号、名字、地址、电话号码,每个用户可以进行信息查询,但不可以进行修改。
(2)供应商的基本信息
每个供应商拥有唯一的编号、名字、地址、供应货物及电号码。
(3)货物的基本信息
每种货物有一个编号,会存放在一个仓库中,货物有唯一的名称,属于一个类型,拥有一定货物存储量,管理员可以对其信息进行修改。
40
供应商地址
货物
Pgoods
char
6
供应商供应货物
电话
Ptel
char
11
供应商电话
照片
Picon
image
16
供应商照片
5.仓库存储数据字典
属性名
存储代码
类型
长度
备注
货物编号
Gno
char
5
仓库编号
Sno
char
5
货物名称
Gname
char
10
类型名称
Tname
char
20
货物存储量
Gnum
int
4
仓库货物存储量
6.货物入库数据字典
属性名
存储代码
类型
长度
备注
货物编号
Gno
char
5
供应商编号
Pno
char
5
货物名称
Gname
char
10
货物类型
Tname
char
20
仓库编号
Sno
real
4
入库总量
Innum
int
4
货物入库总量
收购单价
Inprice
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《JAVA程序设计》课程设计报告设计题目:商场库存管理系统设计与实现学院名称:信息工程学院专业班级:13计本2*名:**学号:**********目录一需求分析。

3二概要设计。

32.1概要设计原则。

32.2.将用户模块需求化。

32.3.最终确定。

3三系统主要功能模块设计。

43..1 登录流程。

63.2.数据库管理。

8四数据库文件。

10五程序的主要界面及程序代码。

155.1.用户登录界面。

155.2.商品信息管理界面。

165.2.1.查找界面。

175.2.2添加界面.。

175.2.3删除界面.。

185.2.1修改界面.。

18六总结。

19 参考资料:.......................................................17一需求分析本系统的主要目的就是实现商品信息管理,使商品信息管理工作更加容易,从而提高工作效率,降低管理成本.系统中需要对商品价格,数量进行管理,及库存量等。

.二概要设计/**************************************************************** ********概要设计阶段主要是粗略描述整个软件的框架,并从业务的角度描述软件的模块、工作流程等。

项目的成功取决于设计的好坏,而概要设计则是整个设计的关键部分。

概要设计的主要任务是将用户的需求划分为不同的功能,然后将这些功能细分成模块,并给模块一些规则约束,以达到各个模块之间可以相互交流的目的。

概要设计关乎到系统的整体架构,因此想做好一个概要设计,不仅仅要熟悉用户的业务流程,还要具备相当丰富的设计经验。

2.1 概要设计的原则概要设计是根据系统分析的需求和工作环境的情况对整个软件的总体结构进行大致的设计。

概要设计要坚持以下几个原则。

(1)细分原则:软件系统都是由很多不同的模块组成,当设计一套软件时,要先将所有的功能分解。

解决复杂问题的方法是将其分解成几个小问题,一个个来解决。

(2)提高代码重用性:在面向对象设计中,首先考虑的就是代码的重用,一个好的设计,将来在升级换代时不需要太大的改动,节省了人力物力。

(3)从上而下层层分析:概要设计要从整体出发,逐个剖析软件的功能,从上而下,先分析系统总的功能,然后一步步细分,直到最小的功能模块。

(4)一致性原则:概要设计要求所有功能模块在定义时使用统一的规范。

(5)提高独立性,减少耦合:各个模块与模块之间尽量减少关联,否则修改一个地方就会引起其他多处的变动,不符合面向对象的原则。

一般情况下,对类封装后,只允许对类进行扩展,而不能修改,而封装的类必须具有单一职责,既理论情况下不允许两个类共同完成一个功能。

(6)模块的大小要尽量适中:不是结构算法越复杂的模块越好,模块的大小要根据实际工作目标和其他类的耦合紧密程度来决定。

经验表明,一个模块的规模不应过大,模块的总行数应控制在10~100行的范围内,最好为30~60行,这样理解和阅读都较方便。

过长的模块往往是分解不充分的表现,会增加阅读理解的难度;但小规模太多也会使模块之间联系变得复杂,增大系统在模块调用时传递信息所花费的开销。

由于概要设计是整个设计的重中之重,牵一发而动全身,所以要努力做一个好的概要设计,才能在今后软件开发过程中不再反复。

现在软件行业流行模式化驱动设计,将一些市场上比较成功的模式拿来用在自己的设计中。

2.2 将用户需求模块化根据概要设计的原则来分析一下本项目的用户需求,并最终转化成用程序语言描述的模块。

什么样的需求才是一个模块?模块应该具备如下3个特征。

(1)输入和输出:模块必须能被调用并且正确的返回调用,而且调用都是相对一个对象而言,这是模块独立性的一个体现。

(2)处理功能:模块必须可以对调用的输入数据进行灵活的处理,并为输出准备好处理结果。

(3)程序代码:用来实现模块功能的源代码。

2.3 确定系统最终模块概要设计中最重要的就是确定此项目包括哪些模块。

根据上两节讲述的设计原则和模块特征,将用户需求转化为下面的模块。

/**************************************************************** *三,系统主要功能模块设计1.1 登录模块流程本模块的主要功能是对用户身份进行验证,只有系统的合法用户才能进入系统。

在进行系统登录过程中,登录模块将调用数据库里的用户清单,并对账号和密码进行验证,只有输入了正确的账号和密码后,系统登录才会成功。

并在输入了错误的或者是不存在的账户和密码时,系统会提示出错信息,指明登录过程中的错误输入或者错误操作,以便用户进行正确的登录。

系统登录模块流程如图4.1所示。

1.2库存管理流程功能:本模块的主要功能是商品信息的查询和更新,库存信息的查询和更新。

查询商品信息:主要功能查询商品的明细信息,和它的库存信息。

添加商品信息:主要功能添加新进的商品。

修改商品信息:主要功能是修改商品的信息,包括他的库存数量。

删除商品信息:主要功能是删除不再销售的商品信息。

输入项、输出项:本模块的数据输入项主要是商品编号。

库存管理流程如图4.4所示确定登录添加商品商品查询商品更改删除商品数据库系统数据流图四,数据文件(或数据库)设计表1表2五,程序的主要界面、代码实现1.用户登录界面:1.1 输入用户编号和密码后,可以登录,可以关闭窗口,也可以重置1.2若密码和用户名输入不正确,将显示提示对话框2 .登录成功后系统2.1登录成功后将显示提示语句:2.2并自动进入商场库存管理界面:2.3查询界面:2.4删除界面:2.5添加界面:2.6修改界面3.1这是Gread类,用于连接数据库package work;import java.sql.*;public class Gread{Connection conn=null;Statement stmt=null;ResultSet rs=null;public Gread(){try{String driverClassName = "com.mysql.jdbc.Driver";Class.forName("com.mysql.jdbc.Driver");//2.连接数据库Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase","root","");stmt=conn.createStatement();}catch(Exception ex){ex.printStackTrace();}}ResultSet executeQuery(String sql){//查询try{rs=stmt.executeQuery(sql);}catch(Exception e){System.out.println(e);} return rs;}void executeUpdate(String sql){//修改try{stmt.executeUpdate(sql);}catch(SQLException e){}}void close(){//关闭try{stmt.close();conn.close();}catch(SQLException e){}}}3.2这是商品库存管理界面类package work;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.awt.BorderLayout;import java.awt.Rectangle;import java.sql.*;public class Gul extends JFrame implements ActionListener{ BorderLayout BL=new BorderLayout();JButton jq=new JButton();//查询JButton ji=new JButton();//插入JButton jd=new JButton();//删除JButton jo=new JButton();//编辑JButton ju=new JButton();//修改JPanel jp=new JPanel();JLabel L1=new JLabel();JLabel L2=new JLabel();JLabel L3=new JLabel();JLabel L4=new JLabel();JLabel L5=new JLabel();JLabel ts=new JLabel();JTextField id=new JTextField();JTextField name=new JTextField();JTextField number=new JTextField();JTextField sid=new JTextField();ResultSet rs=null;public Gul(){try{jbInit();}catch(Exception a){a.printStackTrace();}}private void jbInit()throws Exception{getContentPane().setLayout(BL);this.setTitle("商场库存管理系统");jp.setLayout(null);jp.setBackground(Color.pink);L1.setText("商品编号:");L1.setBounds(new Rectangle(8,103,71,30));L2.setText("数量:");L2.setBounds(new Rectangle(6,175,42,15));L3.setText("商品名:");L3.setBounds(new Rectangle(6,144,42,15));L4.setText("查询条件:");L4.setBounds(new Rectangle(4,27,86,22));L5.setText("商品编号:");L5.setBounds(new Rectangle(42,52,73,24));id.setEditable(false);id.setBounds(new Rectangle(48,109,124,22));name.setEditable(false);name.setBounds(new Rectangle(48,143,124,22));number.setEditable(false);number.setBounds(new Rectangle(47,174,125,23));sid.setBounds(new Rectangle(82,55,110,20));ts.setBounds(new Rectangle(9,281,237,34));ji.setEnabled(false);ju.setEnabled(false);jd.setEnabled(false);jd.setDoubleBuffered(true);this.getContentPane().add(jp,java.awt.BorderLayout.CENTER);jq.setBounds(new Rectangle(216,53,79,23));ji.setBounds(new Rectangle(20,229,72,23));ju.setBounds(new Rectangle(133,230,76,23));jo.setBounds(new Rectangle(217,173,79,23));jd.setBounds(new Rectangle(245,231,74,23));jq.setText("查询");jq.addActionListener(this);ju.setText("修改");ju.addActionListener(this);ji.setText("添加");ji.addActionListener(this);jo.setText("编辑");jo.addActionListener(this);jd.setText("删除");jd.addActionListener(this);jp.add(L1);jp.add(id);jp.add(name);jp.add(number);jp.add(L5);jp.add(sid);jp.add(L4);jp.add(jq);jp.add(ji);jp.add(jo);jp.add(L3);jp.add(L2);jp.add(jd);jp.add(ju);jp.add(ts);this.setSize(500,400);this.setVisible(true);}public static void main(String args[]){Gul F=new Gul();}public void actionPerformed(ActionEvent e){ts.setText("");if(e.getSource()==jq){//查询String s=sid.getText().trim();String sql="select * from user where id='"+s+"'";Gread db=new Gread();rs=db.executeQuery(sql);try{while(rs.next()){id.setText(rs.getString(1));name.setText(rs.getString(2));number.setText(rs.getString(3));}rs.close();if(!id.getText().equals(""))ts.setText("操作成功!");}catch(SQLException ex){}}else if(e.getSource()==jo){//编辑id.setEditable(true);name.setEditable(true);number.setEditable(true);ji.setEnabled(true);ju.setEnabled(true);jd.setEnabled(true);}else if(e.getSource()==ji){//添加String s1=id.getText();String s2=name.getText();int s3=Integer.parseInt(number.getText());String sql="insert into number values("+s1+","+s2+","+s3+")";System.out.println(sql);Gread db=new Gread();db.executeUpdate(sql);ts.setText("操作成功!");}else if(e.getSource()==ju){//修改String s1=id.getText();String s2=name.getText();int s3=Integer.parseInt(number.getText());String sql="update number set name="+s2+",number="+s3+"where id="+s1+"";Gread db=new Gread();db.executeUpdate(sql);ts.setText("操作成功!");}else if(e.getSource()==jd){//删除String s1=id.getText();String s2=name.getText();int s3=Integer.parseInt(number.getText());String sql="delete number where id="+s1+"and name="+s2+"and numer="+s3;Gread db=new Gread();db.executeUpdate(sql);id.setText("");name.setText("");number.setText("");id.setEditable(false);name.setEditable(false);number.setEditable(false);ts.setText("操作成功!");}}}}3.3登录界面类package work;import java.awt.*;import java.awt.image.*;import java.awt.event.*;import javax.swing.*;import javax.imageio.*;import java.sql.*;import java.util.*;import java.io.*;class LoginWindowV2 extends JFrame implements ActionListener{ JPanel p1=new JPanel();JPanel p2=new JPanel();JPanel p3=new JPanel();JPanel p4=new JPanel();JPanel p5=new JPanel();JTextField txtUserName=new JTextField(15); //用户名文本框JPasswordField txtPwd=new JPasswordField(15);//密码框JButton ok=new JButton("登录");JButton cancel=new JButton("关闭");JButton resert=new JButton("重置");public LoginWindowV2(){//字体设置Font font = new Font("宋体",Font.PLAIN,24);Font labelFont = new Font("隶书",Font.BOLD,24);UIManager.put("Button.font",font);UIManager.put("Label.font",labelFont);UIManager.put("TextField.font",labelFont);JpanelBack jpb = new JpanelBack();Container contentPane=this.getContentPane();//取出内容面板p2.add(new JLabel("用户编号:"));p2.add(txtUserName); //将组件添加到中间容器p3.add(new JLabel("密码:"));p3.add(txtPwd);p4.add(ok);p4.add(cancel);p4.add(resert);ok.addActionListener(this);cancel.addActionListener(this);resert.addActionListener(this);txtUserName.addActionListener(this);txtPwd.addActionListener(this);jpb.add(p2);jpb.add(p3);jpb.add(p4);contentPane.add(jpb);setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);//设置自动关闭窗口int width = 400,height=300;setSize(width,height);Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();setLocation((screen.width-width)/2,(screen.height-height)/2);setTitle("欢迎你进入XX商场库存系统");setResizable(false); //不让用户改变窗口大小setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==ok||e.getSource()==txtPwd) //单击确定按钮后{String uid = txtUserName.getText().trim();String upass = txtPwd.getText().trim();if(checkUser(uid,upass)){int i=JOptionPane.showConfirmDialog(null,"登录成功,是否立即去查询系统?","是否查询",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);if(i==JOptionPane.YES_OPTION){Gul stu = new Gul();dispose();stu.setVisible(true);}}else{ JOptionPane.showMessageDialog(null,"用户编号或密码错误!");txtUserName.requestFocus(); //设置焦点txtUserName.setSelectionStart(0); //设置选中文本开始位置txtUserName.setSelectionEnd(txtUserName.getText().length());}}else if(e.getSource()==cancel) //单击关闭{ dispose();System.exit(0);}else if(e.getSource()==txtUserName) //在用户编号文本框按回车移动焦点到密码框{ txtPwd.requestFocus();}else if(e.getSource()==resert){txtUserName.setText("");txtPwd.setText("");txtUserName.requestFocus();}}public boolean checkUser(String id ,String password){try{//1.注册驱动String driverClassName = "com.mysql.jdbc.Driver";Class.forName("com.mysql.jdbc.Driver");//2.连接数据库Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase","root","");String temp_ID=txtUserName.getText();String temp_pass=txtPwd.getText();String sql_user="select userID,userPW from shopping where UserID=? and UserPW=?";PreparedStatement pst=null;pst=conn.prepareStatement(sql_user);pst.setString (1,temp_ID); //为绑定变量赋值pst.setString (2,temp_pass);ResultSet rst=pst.executeQuery();if(rst.next()){rst.close();pst.close();conn.close();return true;}elsereturn false;}catch(Exception sqle){System.err.println(sqle);return false;}}public static void main(String[] args){new LoginWindowV2();}class JpanelBack extends JPanel {BufferedImage img =null;public JpanelBack (){try {img = ImageIO.read(new File("12.jpg"));} catch (IOException e) {e.printStackTrace();}}protected void paintComponent(Graphics g) {super.paintComponent(g);g.drawImage(img, 0,0, getWidth(),getHeight(),this);}}}六,对设计结果的总结我自己感觉此次课程设计做得挺成功的,通过这一次,我学到了不少实际编程的知识在这次设计开始的第一天开始,我刚开始很自信自己能顺顺利利编写成功,但这一过程太不顺利。

相关文档
最新文档