Java期末课程设计-超市进销存管理系统
java超市仓库管理课程设计

java超市仓库管理课程设计一、课程目标知识目标:1. 理解Java面向对象编程的基本概念,掌握类与对象的关系及应用;2. 学会使用Java编写基本的仓库管理功能,如商品信息的增删改查;3. 了解数据库连接和SQL语句在Java中的应用,实现数据存储与检索。
技能目标:1. 能够运用所学知识,设计并实现一个简单的超市仓库管理系统;2. 培养独立分析和解决问题的能力,掌握编程调试技巧;3. 提高团队协作和沟通能力,通过小组合作完成项目任务。
情感态度价值观目标:1. 培养对编程的兴趣和热情,树立自信心,勇于面对编程挑战;2. 培养良好的编程习惯,注重代码规范,提高代码质量;3. 增强实践意识,将所学知识应用于实际生活,体会科技改变生活的魅力。
分析课程性质、学生特点和教学要求,本课程旨在让学生通过实际项目案例,掌握Java编程在超市仓库管理中的应用。
课程目标具体、可衡量,以便学生和教师在教学过程中能够明确预期成果,并为后续教学设计和评估提供依据。
通过本课程的学习,学生将能够具备一定的编程实践能力,为未来从事相关领域工作打下坚实基础。
二、教学内容1. Java面向对象编程基础:复习类与对象的概念,重点讲解封装、继承、多态等特性。
教材章节:第五章 面向对象编程2. Java数据库连接:介绍JDBC的使用,讲解如何通过Java程序连接数据库,执行SQL语句。
教材章节:第八章 数据库编程3. 超市仓库管理功能设计:a. 商品信息管理:实现商品信息的添加、删除、修改和查询功能;b. 库存管理:实现库存的增减和查询功能;c. 销售管理:实现销售记录的添加和查询功能。
教材章节:第七章 Java集合与泛型、第十章 Java异常处理4. 项目实践:分组进行项目开发,每个小组完成一个超市仓库管理系统的设计与实现。
教材章节:全书综合案例5. 编程规范与调试技巧:讲解Java编程规范,培养学生良好的编程习惯,介绍常见的编程调试方法。
Java课程设计超市库存管理系统附源代码可以直接运行

登录= new JButton("登录");
登录.addActionListener(this);
重置= new JButton("重置");
try{
Class.forName(dbdriver);
}
catch(ClassNotFoundException classnotfound){
System.out.println("未能找到SQLServerDriver,请检查是否已加载SQLServer驱动");
}
}
void init()
{
f = new Font("幼圆",Font.BOLD,18);
重置.addActionListener(this);
用户名= new JTextField(16);
用户名.setFont(f);
密码= new JPasswordField(16);
userName = new JLabel("用户名:");
userName.setFont(f);
psw = new JLabel("密码:");
String user = "sa";
String pass = "123";
public loginframe()
{
setLayout(new FlowLayout());
init();
setBounds(130,80,960,600);
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不一样则无法进行该品的进货,销售,库存功能,表结构见附录一
JAVA课程设计超市管理系统的设计与实现

提高工作效率:通过自动化和智能化, 提高超市运营效率
降低成本:减少人力成本,提高资源利 用率
提高服务质量:提供更便捷、高效的服 务,提升顾客满意度
安全性:确保系统安全,防止数据泄露 和系统故障
可扩展性:系统设计应具备良好的可扩 展性,适应未来业务发展需求
用户友好性:界面设计应简洁明了,易 于操作,提高用户体验
销售报表生成: 生成销售报表, 包括销售订单报 表、销售退货报 表、销售统计报 表等
报表生成方式:根据用户选 择生成相应的报表
报表模块功能:提供各种报 表,如销售报表、库存报表 等
报表展示方式:支持多种展 示方式,如表格、图表等
报表导出功能:支持将报表 导出为Excel、PDF等格式
Part Six
能测试,如 JMeter、 LoadRunner
等
性能瓶颈分析: 分析性能测试 结果,找出性
能瓶颈
性能优化:针 对性能瓶颈进 行优化,如优 化数据库查询、 优化代码逻辑
等
性能监控:设 置性能监控指 标,实时监控 系统性能,及 时发现并解决
问题
缺陷类型:功 能缺陷、性能 缺陷、安全缺
陷等
解决方案:修等安全协 议进行数据传输加密,使用防火墙、入 侵检测系统等安全设备进行安全防护
性能优化:使用缓存、负载均衡、分布 式等技术进行系统性能优化和扩展
商品分类:按照商品类型、品牌、价格 等进行分类
商品添加:支持手动添加和批量导入商 品信息
商品修改:支持修改商品名称、价格、 库存等信息
订单管理:查看、修改订单信息,处 理订单状态
报表管理:生成销售报表、库存报表 等,供管理者查看和分析
系统维护:备份数据,更新系统,保 证系统正常运行
java超市仓库管理课程设计

java超市仓库管理课程设计一、教学目标本课程旨在通过Java编程语言,使学生掌握超市仓库管理的基本知识和技能,培养学生运用Java语言进行实际项目开发的能力。
具体的教学目标如下:1.知识目标:(1)理解Java编程语言的基本语法和特性;(2)熟悉超市仓库管理系统的业务流程;(3)掌握Java在超市仓库管理系统中的应用技术和方法。
2.技能目标:(1)能够使用Java编写简单的程序;(2)能够运用Java语言实现超市仓库管理系统的相关功能;(3)具备一定的Java项目开发和调试能力。
3.情感态度价值观目标:(1)培养学生对编程语言的兴趣和热情;(2)培养学生团队协作和自主学习的能力;(3)培养学生运用技术解决实际问题的责任感和社会使命感。
二、教学内容本课程的教学内容主要包括Java编程语言基础、超市仓库管理系统的业务流程及其在Java中的实现。
具体的教学大纲如下:1.Java编程语言基础:(1)Java语法和数据类型;(2)控制结构和函数;(3)面向对象编程;(4)Java集合框架。
2.超市仓库管理系统的业务流程:(1)商品信息管理;(2)库存管理;(3)销售管理;(4)报表统计。
3.Java在超市仓库管理系统中的应用:(1)使用Java实现商品信息管理功能;(2)使用Java实现库存管理功能;(3)使用Java实现销售管理功能;(4)使用Java实现报表统计功能。
三、教学方法本课程采用多种教学方法相结合的方式,以激发学生的学习兴趣和主动性。
具体的教学方法如下:1.讲授法:用于讲解Java编程语言基础知识和超市仓库管理系统的业务流程;2.案例分析法:通过分析实际案例,使学生掌握Java在超市仓库管理系统中的应用;3.实验法:让学生动手编写Java程序,实现超市仓库管理系统的相关功能;4.小组讨论法:分组进行项目开发,培养学生的团队协作和沟通能力。
四、教学资源本课程所需的教学资源包括教材、参考书、多媒体资料和实验设备。
超市管理系统java课课程设计

超市管理系统java课课程设计一、教学目标本节课的教学目标是使学生掌握Java编程的基本语法和逻辑结构,能够运用Java编写简单的程序。
具体来说,知识目标包括理解Java的基本数据类型、控制结构和面向对象编程思想;技能目标包括能够使用Java编写简单的程序,解决实际问题;情感态度价值观目标包括培养学生对计算机科学的兴趣和热情,提高学生解决问题的能力。
二、教学内容本节课的教学内容主要包括Java的基本语法、数据类型、控制结构和面向对象编程。
具体来说,将讲解Java的基本语法规则,包括变量、常量的声明和使用,运算符的运算规则等;介绍Java的数据类型,包括整型、浮点型、字符型和布尔型等;讲解Java的控制结构,包括顺序结构、选择结构和循环结构等;最后介绍Java的面向对象编程思想,包括类和对象的概念,构造函数的定义和使用,成员变量的声明和方法的定义等。
三、教学方法为了达到本节课的教学目标,将采用多种教学方法进行教学。
首先,将采用讲授法,向学生讲解Java的基本语法、数据类型、控制结构和面向对象编程思想;其次,将采用案例分析法,通过分析具体的案例,让学生理解Java编程的实际应用;最后,将采用实验法,让学生动手编写Java程序,巩固所学知识。
四、教学资源为了支持本节课的教学内容和教学方法的实施,将准备一些教学资源。
教材方面,将使用《Java编程思想》作为主教材,辅以《Java核心技术》等参考书;多媒体资料方面,将制作PPT课件,通过图文并茂的方式,帮助学生理解Java编程的概念和语法;实验设备方面,将准备计算机实验室,让学生能够动手编写和运行Java程序。
五、教学评估为了全面、客观地评估学生的学习成果,将采用多种评估方式。
平时表现方面,将根据学生在课堂上的发言、提问和参与程度进行评估;作业方面,将布置适量的编程作业,要求学生独立完成,并根据作业的质量和创新性进行评估;考试方面,将安排一次期中考试和一次期末考试,考试内容主要包括Java的基本语法、数据类型、控制结构和面向对象编程等,考试成绩将占总评分的绝大部分。
JAVA超市库存管理系统2

This article system analysis software has developed background by process; first introduced the software development environment, next introduced this software detailed design process: Database design, each module design and realization, as well as concrete contact surface design and function.
java超市进销存课程设计

java超市进销存课程设计一、课程目标知识目标:1. 学生能够理解并掌握Java语言在开发超市进销存系统中的应用。
2. 学生能运用面向对象编程思想,设计出合理的类和对象,实现商品、库存、销售记录等实体的属性和方法。
3. 学生能了解并运用数据库连接技术,实现数据存储和查询功能。
技能目标:1. 学生能够运用Java语言编写出结构清晰、逻辑性强的代码,实现超市进销存系统的基本功能。
2. 学生能够通过本课程的学习,掌握使用数据库存储数据,实现对数据的增、删、改、查操作。
3. 学生能够运用所学知识,解决实际生活中超市进销存的相关问题。
情感态度价值观目标:1. 学生通过课程学习,培养对编程的兴趣和热情,提高自主学习和解决问题的能力。
2. 学生能够认识到编程在生活中的实际应用,激发对信息技术的热爱。
3. 学生在学习过程中,培养团队合作精神,学会分享和交流,提高沟通能力。
课程性质:本课程为实践性较强的Java语言课程,结合超市进销存实际案例,使学生在实践中掌握编程技能。
学生特点:学生具备一定的Java基础,对面向对象编程有一定了解,但实际应用能力较弱。
教学要求:教师需引导学生通过实践操作,将理论知识应用于实际项目中,培养其编程思维和实际操作能力。
教学过程中,注重培养学生的自主学习能力和团队合作精神。
通过课程目标的实现,使学生能够独立完成超市进销存系统的设计与开发。
二、教学内容1. Java面向对象编程基础:复习类与对象的概念、封装、继承、多态等基础知识,为后续课程打下基础。
- 教材章节:第三章 面向对象编程基础- 内容列举:类与对象的创建、构造方法、访问控制符、继承与多态、接口与实现2. Java数据库连接技术:学习JDBC技术,实现与数据库的连接、数据操作。
- 教材章节:第七章 数据库编程- 内容列举:JDBC简介、数据库连接、SQL语句执行、结果集处理、事务处理3. 超市进销存系统设计:结合实际案例,分析需求,设计系统架构。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java程序设计期末课程设计报告题目超市进销存管理系统班级:13级信息安全班学号:姓名:成绩:完成时间:2014 年12 月目录一、需求分析............................. 错误!未定义书签。
二、系统简介............................. 错误!未定义书签。
三.数据准备............................. 错误!未定义书签。
四、数据库结构........................... 错误!未定义书签。
五、系统实现与核心代码................... 错误!未定义书签。
六、系统的运行结果....................... 错误!未定义书签。
七、心得与体会........................... 错误!未定义书签。
八、参考书目............................. 错误!未定义书签。
一.需求分析企业进销存管理系统的主要工作,是对企业的进货、销售和库存以信息化的方式进行管理,最大限度的减少各个环境中可能出现的错误,有效减少盲目采购,降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,使企业能够合理安排进、销、存的每个关键步骤,替身企业市场竞争力。
针对经营管理中存在的问题,兰州华联超市对产品的进销存合理化提出了更高的要求。
通过实际调查,要求企业进销存管理系统具有以下功能。
◆界面设计美观大方,方便、快捷、操作灵活。
◆实现强大的进销存管理,包括基本信息、进货、销售和库存管理。
◆能够在不同的操作系统下运行,不局限于特定的平台。
◆提供数据库备份与恢复功能。
◆提供库存盘点功能。
◆提供技术支持的联系方式,可以使用邮件进行沟通,或者直接连接到技术网站。
二.分析与设计:(1)功能模块划分:本进销存管理系统划分为六个模块,分别为系统登陆模块,系统主窗体设计模块,进货单模块,销售单模块,库存盘点模块和数据库备份与恢复模块,(2)数据库结构描述:企业进销存管理系统需要使用数据库存储和管理进销存过程中的所有信息,本企业进销存管理系统使用Access数据库系统作为后台数据库,数据库名称为db_database28。
其中包含了14张数据表﹑两个视图。
以下是系统主要涉及的六个数据库表:1.供应商信息表:主要用于存储供应商详细信息,其结构如下表所示:User表:Handle表:Product表:Stuff表:Yield表:空表等待插入数据。
三.系统详细设计文档:1.系统流程图:(1)系统功能结构图:(2)系统业务流程图:(3)系统中的主要类及功能:1.Item公共类:Item公共类是对数据表最常用的ID和name属性的封装,属于swing 列表,表格,下拉列表框等组件的赋值。
该类重写了toString()方法,在该方法中只输出name属性。
但是在获取组件的内容时,获取的是Item 类的对象,从该对象中可以获取ID的属性,然后通过该属性到数据库中获取唯一的数据。
2.数据模型公共类:数据模型公共类对应着数据库中不同的数据表,这些模型将被访问数据库的Dao类和程序中各个模块甚至各个组件使用,数据模型是对数据表所有字段的封装,它是纯粹的模型类,他也要重写toString()方法,另外还要重写hashCode()方法和equal()方法。
它主要用于存贮数据,并通过相应的getXXX()方法和setXXX()实现不同属性的访问原则。
3.Dao公共类:Dao类实现了数据库的驱动,连接,关闭和多个操作数据库的方法,Dao类不需要创建对象,可以直接调用类中的所有数据库操作方法。
Dao 类自定义的主要方法有getKhlnfo(Item item)方法,主要是获取客户信息,方法的返回值是tKhlnfo的对象,及客户信息的数据模型。
getGyslnfo(Item item)方法,主要是获取供应商信息,返回值是Gyslnfo类的对象,及供应商数据表的模型对象。
getSplnfo(Item item)方法,主要用于获取商品信息,返回值是Splnfo类的对象,及商品数据表的数据模型。
getLogin(String name,String password)方法《主要适用于判断登录用户的用户名与密码是否正确,返回值是boolean类型。
insertSelllnfo(TbSellMain sellMain)方法,主要是添加销售信息到数据库中。
restoreOrBackup(String sql)方法,此方法是设置数据库的模式为单用户连接模式,这样可以避免数据库恢复或备份时失败。
checkLogin(String userStr,String passStr)方法,用于判断登录用户与密码是否正确。
(2)各个模块实现方法描述:1.系统登录模块实现该模块的主要代码如下package src;import java.awt.AlphaComposite;import java.awt.GradientPaint;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.Image;import java.awt.RenderingHints;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import javax.swing.JComponent;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.UIManager;public class AddUser {private static final String logoon = "添加用户";private static final String helpt = "添加";private static final String logooff ="退出";private static final String user = "用户:";private static final String password = "密码:";private static final String enterpwd ="再次输入密码:";private javax.swing.JTextField userText=null;private javax.swing.JPasswordField userpwd=null;private javax.swing.JPasswordField enterpassword=null;private javax.swing.JPanel jp = new javax.swing.JPanel(){final static long serialVersionUID = 2309585L;public void paintComponent(Graphics g){super.paintComponent(g);if(!isOpaque()){return;}Graphics2D g2d = (Graphics2D) g;//int rule = AlphaComposite.SRC_OVER;AlphaComposite opaque = AlphaComposite.SrcOver;//AlphaComposite blend = AlphaComposite.getInstance(rule, 0.6f);//AlphaComposite set = AlphaComposite.Src;int width = getWidth();int height = getHeight();GradientPaint gradientPaint = newGradientPaint(0,0,java.awt.Color.green,width/2,height/2,java.awt.Color.yellow,false);g2d.setComposite(opaque);g2d.setPaint(gradientPaint);g2d.fillRect(0, 0, width,height);g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_OFF);}};private javax.swing.JButton add = new javax.swing.JButton(helpt);private javax.swing.JButton cancle = new javax.swing.JButton(logooff);private JFrame logo_Frame = new JFrame(logoon);public AddUser() {// TODO自动生成构造函数存根try{UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());}catch(Exception exe){System.err.print(exe.getMessage());}JFrame.setDefaultLookAndFeelDecorated(true);Toolkit tools = logo_Frame.getToolkit();Image logo = tools.getImage("res/logo.jpg");logo_Frame = new JFrame(logoon);logo_Frame.setIconImage(logo);jp.setLayout(new GridBagLayout());javax.swing.ImageIcon pic = new javax.swing.ImageIcon("res/logo1.jpg");javax.swing.JLabel picture = new javax.swing.JLabel(pic);setupComponent(picture,0,0,GridBagConstraints.ABOVE_BASELINE_LEADING,1,true);javax.swing.JLabel users = new javax.swing.JLabel(user);setupComponent(users,0,1,1,1,false);javax.swing.JLabel pas = new javax.swing.JLabel(password);setupComponent(pas,0,2,1,1,false);javax.swing.JLabel enpas = new javax.swing.JLabel(enterpwd);setupComponent(enpas,0,3,1,1,false);userText = new javax.swing.JTextField(12);userText.requestFocus();userText.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyReleased(KeyEvent e){}public void keyPressed(KeyEvent e){if((e.getKeyChar() == KeyEvent.VK_ENTER )&&(userText.getText().trim() != "")){ userpwd.requestFocus();}}});setupComponent(userText,1,1,1,1,false);userpwd = new javax.swing.JPasswordField(12);userpwd.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){if((e.getKeyChar() == KeyEvent.VK_ENTER) && (!userpwd.getPassword().toString().trim().isEmpty())){enterpassword.requestFocus();}else{userpwd.requestFocus();}}public void keyReleased(KeyEvent e){}});setupComponent(userpwd,1,2,1,1,false);enterpassword = new javax.swing.JPasswordField(12);enterpassword.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyReleased(KeyEvent e){}public void keyPressed(KeyEvent e){//String pwd = userpwd.getPassword().toString().trim();//String epwd = enterpassword.getPassword().toString().trim();if((e.getKeyChar()==KeyEvent.VK_ENTER) &&((userpwd.getPassword().toString().trim())==(enterpassword.getPassword().toString().trim()))){add.requestFocus();}else if((e.getKeyChar()==(KeyEvent.VK_ENTER)) &&((userpwd.getPassword().toString().trim())!=(enterpassword.getPassword().toString().trim()))){ userpwd.setText("");enterpassword.setText("");userpwd.requestFocus();}}});setupComponent(enterpassword,1,3,1,1,false);//logoin = new javax.swing.JButton(logoon);add.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyReleased(KeyEvent e){}public void keyPressed(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER )){String users =userText.getText().trim();String pwd =userpwd.getPassword().toString().trim();String epwd =enterpassword.getPassword().toString().trim();if(users.isEmpty()){javax.swing.JOptionPane.showMessageDialog(logo_Frame, "必须输入用户名!","输入用户名",JOptionPane.ERROR_MESSAGE);userText.requestFocus();}if(pwd.isEmpty()){javax.swing.JOptionPane.showMessageDialog(logo_Frame, "必须输入密码!","输入密码",JOptionPane.ERROR_MESSAGE);userpwd.requestFocus();}if(epwd.isEmpty()){javax.swing.JOptionPane.showMessageDialog(logo_Frame, "第二个输入密码必须与第一个密码相同!","密码不一致",JOptionPane.ERROR_MESSAGE);enterpassword.requestFocus();}boolean b = DBUtil.isExist("select user_name from user whereuser_name="+"'"+users+"'");if(b){javax.swing.JOptionPane.showMessageDialog(logo_Frame, "用户已经存在,请另外输入!","不能添加",JOptionPane.ERROR_MESSAGE);userText.setText("");userpwd.setText("");enterpassword.setText("");userText.requestFocus();}int vale = DBUtil.getValue("select user_name from user whereuser_name='"+users+"'")+1;if(vale>0){String sql = "insert into user values('"+vale+",'"+users+"','"+pwd+"')";boolean bo = USeDB.Update(sql);if(bo)JOptionPane.showConfirmDialog(logo_Frame, "用户名添加成功!");}}}});add.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){String users =userText.getText().trim();String pwd =userpwd.getPassword().toString().trim();String epwd =enterpassword.getPassword().toString().trim();if(users.isEmpty()){javax.swing.JOptionPane.showMessageDialog(null, "必须输入用户名!","输入用户名",JOptionPane.ERROR_MESSAGE);userText.requestFocus();}if(pwd.isEmpty()){javax.swing.JOptionPane.showMessageDialog(null, "必须输入密码!","输入密码",JOptionPane.ERROR_MESSAGE);userpwd.requestFocus();}if(epwd.isEmpty()){javax.swing.JOptionPane.showMessageDialog(null, "第二个输入密码必须与第一个密码相同!","密码不一致",JOptionPane.ERROR_MESSAGE);enterpassword.requestFocus();}boolean b = DBUtil.isExist("select user_name from user where user_name='"+users+"'");if(b){javax.swing.JOptionPane.showMessageDialog(logo_Frame, "用户已经存在,请另外输入!","不能添加",JOptionPane.ERROR_MESSAGE);userText.setText("");userpwd.setText("");enterpassword.setText("");userText.requestFocus();}int vale = DBUtil.getValue("select user_name from user where user_name='"+users+"'")+1;if(vale>0){String sql = "insert into user values('"+vale+",'"+users+"','"+pwd+"')";USeDB.UpdateDB(sql);boolean bo = DBUtil.isExist("select user_name from user where id=vale");if(bo){JOptionPane.showConfirmDialog(null, "用户名添加成功!");}JOptionPane.showConfirmDialog(null, "用户名已经存在!");}userText.setText("");userpwd.setText("");enterpassword.setText("");userText.requestFocus();}});setupComponent(add,0,4,1,1,true);//javax.swing.JButton exit = new javax.swing.JButton(logooff);cancle.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e2){logo_Frame.dispose();//System.exit(0);}});setupComponent(cancle,1,4,1,1,true);java.awt.Dimension d = tools.getScreenSize();int width = (int)(d.getWidth()-350) /2;int height = (int)(d.getHeight()-240)/2;logo_Frame.add(jp);logo_Frame.setAlwaysOnTop(true);logo_Frame.setLocation(width, height);logo_Frame.setSize(350, 240);logo_Frame.pack();logo_Frame.validate();logo_Frame.setVisible(true);}private void setupComponent(JComponent component,int gridx,int gridy,int gridwidth,int ipadx,boolean fill){final GridBagConstraints gridBagConstrains = new GridBagConstraints();gridBagConstrains.gridx = gridx;gridBagConstrains.gridy = gridy;gridBagConstrains.insets = new java.awt.Insets(5,3,3,3);if(gridwidth>1)gridBagConstrains.gridwidth = gridwidth;if(ipadx > 0)gridBagConstrains.ipadx = ipadx;if(fill)gridBagConstrains.fill = GridBagConstraints.HORIZONTAL;jp.add(component,gridBagConstrains);}}package src;import java.awt.AlphaComposite;import java.awt.GradientPaint;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.RenderingHints;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.util.regex.Matcher;import java.util.regex.Pattern;import javax.swing.JPanel;import javax.swing.JComponent;public class createStuffQuitInterFace extends JPanel{private final static long serialVersionUID = 230000123423L;private javax.swing.JTextField stuff_id = null;private javax.swing.JTextField stuff_name = null;private javax.swing.JTextField stuff_company = null;private javax.swing.JTextField stuff_people = null;private javax.swing.JTextField check_people = null;private javax.swing.JTextField stuff_unit = null;private javax.swing.JTextField stuff_value = null;private javax.swing.JTextField stuff_spec = null;private javax.swing.JTextField stuff_color = null;private javax.swing.JTextField stuff_place = null;private javax.swing.JTextField stock_date = null;private javax.swing.JTextField stuff_text = null;private javax.swing.JButton enter = null;private javax.swing.JButton clean = null;private javax.swing.JButton cancle = null;private String sql = null;public createStuffQuitInterFace() {// TODO自动生成构造函数存根this.setLayout(new GridBagLayout());this.setBackground(java.awt.Color.PINK);javax.swing.JLabel stuff_id_label = new javax.swing.JLabel("编号:");setupComponent(stuff_id_label,0,0,1,1,true);stuff_id = new javax.swing.JTextField(10);stuff_id.requestFocus();stuff_id.addKeyListener(new KeyListener(){public void keyReleased(KeyEvent e){if((e.getKeyChar() == KeyEvent.VK_ENTER) && ((stuff_id.getText().trim()) != "")){ stuff_name.requestFocus();}}public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}});setupComponent(stuff_id,1,0,1,1,true);javax.swing.JLabel stuff_name_label = new javax.swing.JLabel("原料名:");setupComponent(stuff_name_label,2,0,1,1,true);stuff_name = new javax.swing.JTextField(10);stuff_name.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stuff_name.getText().trim() != "")){ stuff_company.requestFocus();}}});setupComponent(stuff_name,3,0,1,1,true);javax.swing.JLabel stuff_company_label = new javax.swing.JLabel("生产商:");setupComponent(stuff_company_label,4,0,1,1,true);stuff_company = new javax.swing.JTextField(10);stuff_company.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stuff_company.getText().trim() != "")){ stuff_people.requestFocus();}}});setupComponent(stuff_company,5,0,1,1,true);javax.swing.JLabel stuff_people_label = new javax.swing.JLabel("收货员:");setupComponent(stuff_people_label,6,0,1,1,true);stuff_people = new javax.swing.JTextField(10);stuff_people.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stuff_people.getText().trim() != "")){ check_people.requestFocus();}}});setupComponent(stuff_people,7,0,1,1,true);javax.swing.JLabel check_people_label = new javax.swing.JLabel("检验员:");setupComponent(check_people_label,0,1,1,1,true);check_people = new javax.swing.JTextField(10);check_people.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (check_people.getText().trim() != "")){ stuff_unit.requestFocus();}}});setupComponent(check_people,1,1,1,1,true);javax.swing.JLabel stuff_unit_label = new javax.swing.JLabel("单位:");setupComponent(stuff_unit_label,2,1,1,1,true);stuff_unit = new javax.swing.JTextField(10);stuff_unit.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stuff_unit.getText().trim() != "")){stuff_value.requestFocus();}}});setupComponent(stuff_unit,3,1,1,1,true);javax.swing.JLabel stuff_value_label = new javax.swing.JLabel("数量:");setupComponent(stuff_value_label,4,1,1,1,true);stuff_value = new javax.swing.JTextField(10);stuff_value.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stuff_value.getText().trim() != "")){if(CheckValue(stuff_value.getText().trim())){stuff_spec.requestFocus();}else{javax.swing.JOptionPane.showMessageDialog(null,"你的录入有误,请录入0-9的数值!","录入错误",javax.swing.JOptionPane.ERROR_MESSAGE);stuff_value.setText("");stuff_value.requestFocus();}}}});setupComponent(stuff_value,5,1,1,1,true);javax.swing.JLabel stuff_spec_label = new javax.swing.JLabel("规格:");setupComponent(stuff_spec_label,6,1,1,1,true);stuff_spec = new javax.swing.JTextField(10);stuff_spec.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stuff_spec.getText().trim() != "")){ stuff_color.requestFocus();}}});setupComponent(stuff_spec,7,1,1,1,true);javax.swing.JLabel stuff_color_label = new javax.swing.JLabel("颜色:"); setupComponent(stuff_color_label,0,2,1,1,true);stuff_color = new javax.swing.JTextField(10);stuff_color.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stuff_color.getText().trim() != "")){ stuff_place.requestFocus();}}});setupComponent(stuff_color,1,2,1,1,true);javax.swing.JLabel stuff_place_label = new javax.swing.JLabel("存放位置:");setupComponent(stuff_place_label,2,2,1,1,true);stuff_place = new javax.swing.JTextField(10);stuff_place.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER)&&(stuff_place.getText().trim() !="")){ stock_date.requestFocus();}}});setupComponent(stuff_place,3,2,1,1,true);javax.swing.JLabel stock_date_label = new javax.swing.JLabel("入库时间:");setupComponent(stock_date_label,4,2,1,1,true);stock_date = new javax.swing.JTextField(10);stock_date.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER) && (stock_date.getText().trim() != "")){ if(CheckDate(stock_date.getText().trim())){stuff_text.requestFocus();}else{javax.swing.JOptionPane.showMessageDialog(null,"数据录入错误格式为:YYYY/MM/DD,请你重新输入!","数据错误",javax.swing.JOptionPane.ERROR_MESSAGE);stock_date.setText("");stock_date.requestFocus();}}}});setupComponent(stock_date,5,2,1,1,true);javax.swing.JLabel stuff_text_label = new javax.swing.JLabel("原料备注:");setupComponent(stuff_text_label,6,2,1,1,true);stuff_text = new javax.swing.JTextField(10);stuff_text.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER)){enter.requestFocus();}}});setupComponent(stuff_text,7,2,1,1,true);enter = new javax.swing.JButton("录入");enter.addKeyListener(new KeyListener(){public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}public void keyReleased(KeyEvent e){if((e.getKeyChar()==KeyEvent.VK_ENTER)){IsGood();}}});enter.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){IsGood();}});setupComponent(enter,1,3,1,1,true);clean = new javax.swing.JButton("清空");clean.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){clean();}});setupComponent(clean,3,3,1,1,true);cancle = new javax.swing.JButton("退出");cancle.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){}});setupComponent(cancle,5,3,1,1,true);}public void paintComponent(Graphics g){super.paintComponent(g);if(!isOpaque()){return;}Graphics2D g2d = (Graphics2D) g;//int rule = AlphaComposite.SRC_OVER;AlphaComposite opaque = AlphaComposite.SrcOver;//AlphaComposite blend = AlphaComposite.getInstance(rule, 0.6f);//AlphaComposite set = AlphaComposite.Src;int width = getWidth();int height = getHeight();GradientPaint gradientPaint = newGradientPaint(0,0,java.awt.Color.green,width/2,height/2,java.awt.Color.yellow,false);g2d.setComposite(opaque);g2d.setPaint(gradientPaint);g2d.fillRect(0, 0, width,height);g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_OFF);}private void setupComponent(JComponent component,int gridx,int gridy,int gridwidth,int ipadx,boolean fill){final GridBagConstraints gridBagConstrains = new GridBagConstraints();gridBagConstrains.gridx = gridx;gridBagConstrains.gridy = gridy;gridBagConstrains.insets = new java.awt.Insets(5,3,3,3);if(gridwidth>1)gridBagConstrains.gridwidth = gridwidth;if(ipadx > 0)gridBagConstrains.ipadx = ipadx;if(fill)gridBagConstrains.fill = GridBagConstraints.VERTICAL ;this.add(component,gridBagConstrains);}private void clean(){stuff_id.setText("");stuff_name.setText("");stuff_company.setText("");stuff_people.setText("");check_people.setText("");stuff_unit.setText("");stuff_value.setText("");stuff_spec.setText("");stuff_color.setText("");stuff_place.setText("");stock_date.setText("");stuff_text.setText("");stuff_id.requestFocus();}private void IsGood(){String id = stuff_id.getText().trim();String name = stuff_name.getText().trim();String company = stuff_company.getText().trim();String people = stuff_people.getText().trim();String check = check_people.getText().trim();String unit = stuff_unit.getText().trim();String value = stuff_value.getText().trim();String spec = stuff_spec.getText().trim();String color = stuff_color.getText().trim();String place = stuff_place.getText().trim();String date = stock_date.getText().trim();String text = stuff_text.getText().trim();String str [] = {id,name,company,people,check,unit,value,spec,color,place,date,text};for(int i =0;i<str.length;i++){if(str[i].isEmpty()){javax.swing.JOptionPane.showMessageDialog(null,"必填项,请务必输入!","必须输入",javax.swing.JOptionPane.ERROR_MESSAGE);return;}}sql = "select stuff_ID,stuff_name,stuff_company,stuff_unit from stuff_in where stuff_ID="+id+" and stuff_name="+name+" and stuff_company="+company+" and stuff_unit="+unit;if(!DBUtil.isExist(sql)){javax.swing.JOptionPane.showMessageDialog(null,"请认真核对你的输入项是否和以前的相等,请务必输入相同的编号、名称、公司、规格!","重新输入",javax.swing.JOptionPane.ERROR_MESSAGE);clean();return;}sql ="delete from stuff_in where stuff_ID="+id+" and stuff_name="+name+" andstuff_company="+company+" and stuff_unit="+unit;USeDB.UpdateDB(sql);sql ="'"+id+"','"+name+"','"+company+"','"+people+"','"+check+"','"+unit+"','"+value+"','"+spec+"','"+color+"','"+place+"','"+date+"','"+text+"'";sql = "insert into stuff_quit values("+sql+")";USeDB.UpdateDB(sql);clean();}private boolean CheckValue(String s){char ch[] = s.toCharArray();int j=0;for(int i=0;i<ch.length;i++){if((ch[i]>'\u002f') && (ch[i]<'\u0040') ){j++;}}if(j==ch.length){return true;}return false;}private boolean CheckDate(String st){//检效年月日boolean b = false;String token[] = st.split("/");if((CheckDateRexgex(st))&&(token.length == 3)){if((CheckValue(token[0]))&& (CheckValue(token[1])) && (CheckValue(token[2]))){b = ISLeapYear(token);}}return b;}private boolean ISLeapYear(String str[]){int year = Integer.parseInt(str[0]);int month = Integer.parseInt(str[1]);int day = Integer.parseInt(str[2]);boolean b = false;if((month>0) && (month<13)){if((month == 1) || (month == 3) || (month == 5) || (month == 7) || (month == 8) || (month == 10) || (month == 12)){if(day>0 && day<32){b = true;}}else if((month == 4) || (month ==6 ) || (month == 9) || (month == 11)){if(day>0 && day<31){b= true;}}else if(month==2){if(((year%4 == 0) && (year%100 !=0)) || (year%400 == 0)){//是闰年if(day>0 && day<30){b = true;}}if(day>0 && day<29){b= true;}}}return b;}private boolean CheckDateRexgex(String str){Pattern re = pile("[0-9]{4}\\/[0-9]{1,2}\\/[0-9]{1,2}");Matcher m = re.matcher(str);boolean b = m.matches();return b;}}package src;import java.awt.AlphaComposite;import java.awt.GradientPaint;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.GridBagConstraints;import java.awt.RenderingHints;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyListener;import java.awt.event.KeyEvent;import javax.swing.JComponent;//import javax.swing.JFrame;//import javax.swing.JPanel;//import javax.swing.UIManager;import java.util.regex.Pattern;import java.util.regex.Matcher;public class createUserProductInterFace extends javax.swing.JPanel{//implements ActionListener private final static long serialVersionUID = 230002323189L;private String sql = null;private javax.swing.JTextField product_id = null;private javax.swing.JTextField product_client = null;private javax.swing.JTextField product_name = null;private javax.swing.JTextField product_spec = null;private javax.swing.JTextField product_unit = null;private javax.swing.JTextField product_value = null;private javax.swing.JTextField product_make = null;private javax.swing.JTextField stock_date = null;private javax.swing.JTextField product_text = null;private javax.swing.JButton enter = null;private javax.swing.JButton cancle = null;private javax.swing.JButton quit = null;//private javax.swing.JButton find = null;public createUserProductInterFace(){//增加删除生产产品//pane = new javax.swing.JPanel();this.setLayout(new java.awt.GridBagLayout());this.setBackground(java.awt.Color.PINK);javax.swing.JLabel product_id_label = new javax.swing.JLabel("产品编号:");setupComponent(product_id_label,0,0,1,1,true);product_id = new javax.swing.JTextField(10);product_id.requestFocus();product_id.addKeyListener(new KeyListener(){public void keyReleased(KeyEvent e){if(e.getKeyChar()== KeyEvent.VK_ENTER && product_id.getText().trim() != ""){ product_client.requestFocus();}}public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}});setupComponent(product_id,1,0,1,1,true);javax.swing.JLabel product_client_label = new javax.swing.JLabel("客户名称:");setupComponent(product_client_label,2,0,1,1,true);product_client = new javax.swing.JTextField(10);product_client.addKeyListener(new KeyListener(){public void keyReleased(KeyEvent e){if(e.getKeyChar()== KeyEvent.VK_ENTER && product_client.getText().trim() != ""){ product_name.requestFocus();}}public void keyTyped(KeyEvent e){}public void keyPressed(KeyEvent e){}});setupComponent(product_client,3,0,1,1,true);javax.swing.JLabel product_name_label = new javax.swing.JLabel("产品名称:");setupComponent(product_name_label,4,0,1,1,true);product_name = new javax.swing.JTextField(10);product_name.addKeyListener(new KeyListener(){。