数据库综合实验——客户订购登记数据库之数据库编程(JDBC)

	承接上次数据库设计,来到数据库编程模块!

一、说明

  1. 技术栈:Java语言程序设计,JDBC,Swing图形用户界面设计,数据库设计
  2. 相关工具: IntelliJ IDEA,JDK-15,SSMS,SQL Server。

二、代码组织模式

模仿MVC模式设计,视图层负责处理用户交互,控制层负责处理用户的请求,逻辑层负责处理具体操作与数据库交互。
主要类图:
在这里插入图片描述

三、项目构建

三、项目构建

建立项目初期,想法较多,设计了比较多功能,编程实践后删减了一些功能,保留了需求分析阶段的核心功能,即登记客户->客户选购商品->开订单->开发票。
下图为项目目录(其中部分功能删减了,部分类没有实现)
在这里插入图片描述
在这里插入图片描述
SSMS建表:
在这里插入图片描述

四、类文件说明

上图中的所有类在下面没说明的都可以忽略!

程序入口:
Application_Entrance.java

常量文件:
Constant.java:保存各种常量等

视图层类:
Login_Frame.java:管理员登录界面
Administrator_Frame.java:管理员功能界面
CustomerManage_Frame.java:客户管理界面
GoodsManage_Frame.java:商品管理界面
OrderManage_Frame.java:订单管理界面
InvoiceManage_Frame.java:发票管理界面

控制层类:
LoginController.java:管理员登录控制
QueryController.java:查询控制
UpdateContriller.java:更新控制
AddController.java:添加控制

逻辑层类:
AddCustomerAction.java:新增客户处理
AddGoodsInfoInOrder.java:添加订单中的商品信息处理
AddInvoiceAction.java:添加发票处理
AddOrderAction.java:添加订单处理

QueryAdministratorAction.java:查询管理员
QueryCustomerAction.java:查询客户
QueryGoodsAction.java:查询商品
QueryGoodsInfoInOrderAction.java:查询订单中的商品信息
QueryInvoiceAction.java:查询发票
QueryOrderAction.java:查询订单

UpdateGoodsAction.java:更新商品信息

以上提到的文件为有效文件。

五、运行示例

核心业务操作顺序:管理员输入密码登录->新增客户->去购物->客户选购商品->开订单->保存订单->开发票->选择支付方式->去支付->保存(打印)发票

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
以上就是核心业务啦!当然笔者还实现了部分其他功能,在源代码中可以知晓!

六、完整源代码

以下为部分类源代码,全部代码笔者已上传,所有上传文件免费!!!不需要任何形式的货币!!!

完整源代码直达,biubiubiu~~~

Constant.java:

/*
 *@author W-nut
 *
 */

package application_Constant;

import java.util.ArrayList;

public interface Constant
{
    //the link to database
    String DATABASE_URL="jdbc:sqlserver://W-NUT:1433;DatabaseName=CustomerPurchase";
    String USER_NAME="sa";
    String USER_PASSWORD="123456";

    //the name of actions
    String LOAD_DATABASE="application_Action.LoadDatabaseAction";

    //the query of SQL
    String QUERY_ADMINISTRATOR_NAME_PASSWORD="select ad_Name,ad_Password from CP_administrator";
    String QUERY_CUSTOMER="select* from CP_customer";
    String QUERY_CUSTOMER_NUM="select cus_Num from CP_customer";
    String QUERY_CUSTOMER_BY_NAME="select cus_Name from CP_customer where cus_Name=?";
    String QUERY_CUSTOMER_ALL_BY_NAME="select cus_Num,cus_Name,cus_Tel,cus_Address from CP_customer where cus_Name=?";
    String QUERY_CUSTOMER_NUM_BY_NAME="select cus_Num from CP_customer where cus_Name=?";
    String QUERY_CUSTOMER_NAME="select cus_Name from CP_customer";
    String QUERY_GOODS= "select* from CP_goods";
    String QUERY_GOODS_BY_NAME="select * from CP_goods where goods_Name=?";
    String QUERY_GOODS_STORE_NUM_BY_NAME="select goods_StoreNum from CP_goods where goods_Name=?";
    String QUERY_GOODS_STORE_NUM="select goods_StoreNum from CP_goods where goods_Name=?";
    String QUERY_GOODS_INFO_IN_ORDER_BY_ORDER_NUM= "select goods_Name,goods_ChooseNum from CP_goodsInfoInOrder where order_Num=?";
    String QUERY_GOODS_INFO_IN_ORDER_LAST_PK="select info_PK from CP_goodsInfoInOrder ";
    String QUERY_ORDER_NUM="select order_Num from CP_Order";
    String QUERY_INVOICE_NUM="select inv_Num from CP_invoice";

    String ADD_CUSTOMER="insert into CP_customer values(?,?,?,?) ";
    String ADD_ORDER="insert into CP_order(order_Num,order_CustomerNum,order_Date) values(?,?,?)";
    String ADD_GOODS_INFO_IN_ORDER="insert into CP_goodsInfoInOrder values(?,?,?,?,?)";
    String ADD_INVOICE="insert into CP_invoice values(?,?,?,?,?,?)";

    String UPDATE_GOODS_STORE_NUM="update CP_goods set goods_StoreNum=? where goods_Name=?";

    //the table info of customer
    ArrayList<String>CUSTOMER_INFO_HEADER=new ArrayList<>();            //客户表表头
    ArrayList<String>CUSTOMER_INFO_NUM=new ArrayList<>();               //客户号
    ArrayList<String>CUSTOMER_INFO_NAME=new ArrayList<>();              //客户名
    ArrayList<String>CUSTOMER_INFO_TEL=new ArrayList<>();               //客户电话
    ArrayList<String>CUSTOMER_INFO_ADDRESS=new ArrayList<>();           //客户地址
    ArrayList<String>CUSTOMER_INFO_ALL=new ArrayList<>();               //客户全部信息

    //the table info of goods
    ArrayList<String>GOODS_INFO_HEADER=new ArrayList<>();               //商品表表头
    ArrayList<String>GOODS_INFO_SELECTED_HEADER=new ArrayList<>();      //已选商品表表头
    ArrayList<String>GOODS_INFO_NUM=new ArrayList<>();                  //商品号
    ArrayList<String>GOODS_INFO_NAME=new ArrayList<>();                 //商品名
    ArrayList<Float>GOODS_INFO_PRICE=new ArrayList<>();                 //商品单价
    ArrayList<Integer>GOODS_INFO_STORE_NUM=new ArrayList<>();           //商品库存

    ArrayList<String>GOODS_SELECTED_HEADER=new ArrayList<>();           //已选商品表格头
    ArrayList<String>GOODS_SELECTED_NAME=new ArrayList<>();             //已选商品名
    ArrayList<String>GOODS_SELECTED_CHOOSE_NUM=new ArrayList<>();       //已选商品个数

    //the info of order table
    ArrayList<String>ORDER_INFO_NUM=new ArrayList<>();                  //查询的订单号
    ArrayList<String>INVOICE_INFO_NUM=new ArrayList<>();                //查询的发票号

    //some state flags
    int CUSTOMER_NAME_OVER_LENGTH=0;                                    //输入客户名长度错误
    int CUSTOMER_NAME_OVERLOAD=1;                                       //输入客户名重名
    int CUSTOMER_NAME_NOT_OVERLOAD=2;                                   //客户名不重名
    int CUSTOMER_TEL_OVER_LENGTH=3;                                     //输入客户名电话长度错误
    int CUSTOMER_ADDRESS_OVER_LENGTH=4;                                 //输入客户名地址长度错误
    int ADD_CUSTOMER_ALLOWED=5;                                         //输入客户信息全部合法
    int DATABASE_ERROR=6;                                               //数据库错误

    int GOODS_STORE_NUM_SHORT=7;                                        //商品库存不够
    int GOODS_STORE_NUM_ENOUGH=8;                                       //商品库存充足
    int INPUT_NOT_INTEGER=9;                                            //输入的不是整数
    int ERROR=10;                                                       //操作成功
    int SUCCESS=11;                                                     //操作失败

    //the ways of paying
    String [] PAY_WAYS={"支付宝","微信","银行卡","现金"};                   //支付方式
}

Application_Entrance.java:


/*
 * @author W-nut
 * 业务流程:登记客户信息->选购商品->生成订单->开具发票
 * 框架模式:模仿MVC(model-view-controller)
 */


package application_Entrance;

import application_Frame.Login_Frame;

@SuppressWarnings("unused")

public class Application_Entrance
{
    public static void main(String[] args)
    {
        Login_Frame login_frame=new Login_Frame();
    }
}

Login_Frame.java:


/*
 * @author W-nut
 */
package application_Frame;

import application_Controller.LoginController;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Login_Frame extends JFrame
{
    // JFormDesigner - Variables declaration - DO NOT MODIFY  //GEN-BEGIN:variables
    private JButton button_Login;
    private JButton button_Esc;
    private JTextField textField_User_Name;
    private JLabel label_User_Name;
    private JLabel label_Password;
    private JPasswordField passwordField_Password;

    private Administrator_Frame administrator_frame;
    private LoginController loginController;
    // JFormDesigner - End of variables declaration  //GEN-END:variables

    public Login_Frame()
    {
        initComponents();
        Load_Login_Frame();
    }
    public String get_textField_User_Name()
    {
        return textField_User_Name.getText();
    }
    public String get_passwordField_Password()
    {
        return String.valueOf(passwordField_Password.getPassword());
    }

    private void Load_Login_Frame()
    {
        this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        this.setSize(400,300);
        this.setVisible(true);
    }
    private void button_Login_MouseClicked(MouseEvent e)
    {
        boolean input_message= !get_textField_User_Name().equals("") && !get_passwordField_Password().equals("");
        if(input_message)
        {
            loginController=new LoginController(get_textField_User_Name(),get_passwordField_Password());
            boolean id_verifiedMessage = loginController.getVerifiedMessage();
            if(id_verifiedMessage)
            {
                administrator_frame = new Administrator_Frame();
                this.setVisible(false);
            }
            else
                JOptionPane.showMessageDialog(this,"用户名或密码错误!");
        }
        else
            JOptionPane.showMessageDialog(this,"用户名和密码不能为空!");
    }

    private void button_Esc_MouseClicked(MouseEvent e)
    {
        System.exit(0);
    }

    private void initComponents()
    {

        // Generated using JFormDesigner Evaluation license - nut
        button_Login = new JButton();
        button_Esc = new JButton();
        textField_User_Name = new JTextField();
        label_User_Name = new JLabel();
        label_Password = new JLabel();
        passwordField_Password = new JPasswordField();

        //======== this ========
        setTitle("W-nut Login");
        var contentPane = getContentPane();
        contentPane.setLayout(null);

        //---- button_Login ----
        button_Login.setText("Login");
        button_Login.addMouseListener(new MouseAdapter()
        {
            @Override
            public void mouseClicked(MouseEvent e)
            {
                button_Login_MouseClicked(e);
            }
        });
        contentPane.add(button_Login);
        button_Login.setBounds(new Rectangle(new Point(115, 215), button_Login.getPreferredSize()));

        //---- button_Esc ----
        button_Esc.setText("Esc");
        button_Esc.addMouseListener(new MouseAdapter()
        {
            @Override       //重写父类方法声明
            public void mouseClicked(MouseEvent e)
            {
                button_Esc_MouseClicked(e);
            }
        });
        contentPane.add(button_Esc);
        button_Esc.setBounds(new Rectangle(new Point(265, 215), button_Esc.getPreferredSize()));
        contentPane.add(textField_User_Name);
        textField_User_Name.setBounds(155, 65, 135, textField_User_Name.getPreferredSize().height);

        //---- label_User_Name ----
        label_User_Name.setText("User_Name");
        contentPane.add(label_User_Name);
        label_User_Name.setBounds(new Rectangle(new Point(70, 70), label_User_Name.getPreferredSize()));

        //---- label_Password ----
        label_Password.setText("Password");
        contentPane.add(label_Password);
        label_Password.setBounds(new Rectangle(new Point(70, 125), label_Password.getPreferredSize()));
        contentPane.add(passwordField_Password);
        passwordField_Password.setBounds(155, 115, 135, passwordField_Password.getPreferredSize().height);

        {
            // compute preferred size
            Dimension preferredSize = new Dimension();
            for(int i = 0; i < contentPane.getComponentCount(); i++)
            {
                Rectangle bounds = contentPane.getComponent(i).getBounds();
                preferredSize.width = Math.max(bounds.x + bounds.width, preferredSize.width);
                preferredSize.height = Math.max(bounds.y + bounds.height, preferredSize.height);
            }
            Insets insets = contentPane.getInsets();
            preferredSize.width += insets.right;
            preferredSize.height += insets.bottom;
            contentPane.setMinimumSize(preferredSize);
            contentPane.setPreferredSize(preferredSize);
        }
        pack();
        setLocationRelativeTo(getOwner());
        // JFormDesigner - End of component initialization  //GEN-END:initComponents

    }


}

Adminstrator_Frame.java:

/*
 * Created by JFormDesigner on Mon Nov 16 17:55:01 CST 2020
 * @author W-nut
 */

package application_Frame;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

import application_Frame_Administrator_ChildFrame.*;

@SuppressWarnings("unused")
public class Administrator_Frame extends JFrame
{

    public Administrator_Frame()
    {
        initComponents();
        Load_Administrator();
    }

    private void Load_Administrator()
    {
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setSize(400,300);
        this.setVisible(true);
    }


    private void menuItem_AddCustomer_ActionPerformed(ActionEvent e)
    {
        CustomerManage_Frame customerManage_frame=new CustomerManage_Frame(0);
        this.setVisible(false);
    }

    private void menuItem_QueryCustomer_ActionPerformed(ActionEvent e)
    {
        CustomerManage_Frame customerManage_frame=new CustomerManage_Frame(1);
        this.setVisible(false);
    }

    private void menuItem_DeleteCustomer_ActionPerformed(ActionEvent e)
    {
        CustomerManage_Frame customerManage_frame=new CustomerManage_Frame(2);
        this.setVisible(false);
    }

    private void menuItem_UpdateCustomer_ActionPerformed(ActionEvent e)
    {
        CustomerManage_Frame customerManage_frame=new CustomerManage_Frame(3);
        this.setVisible(false);
    }
    private void menuItem_QueryOrder_ActionPerformed(ActionEvent e)
    {
        OrderManage_Frame orderManage_frame=new OrderManage_Frame(0);
        this.setVisible(false);
    }
    private void menuItem_AddOrder_ActionPerformed(ActionEvent e)
    {
        OrderManage_Frame orderManage_frame=new OrderManage_Frame(1);
        orderManage_frame.checkCustomer();
        this.setVisible(false);
    }
    private void menuItem_AddInvoice_ActionPerformed(ActionEvent e)
    {
        InvoiceManage_Frame invoiceManage_frame=new InvoiceManage_Frame();
        invoiceManage_frame.checkCustomer();
        this.setVisible(false);
    }
    private void menuItem_SelectGoods_ActionPerformed(ActionEvent e) 
    {
       GoodsManage_Frame goodsManage_frame=new GoodsManage_Frame(0);
       goodsManage_frame.checkCustomer();
       this.setVisible(false);
    }

    private void menuItem_AddCustomer_MouseClicked(MouseEvent e)
    {
        // TODO add your code here
    }

    private void menuItem_QueryCustomer_MouseClicked(MouseEvent e)
    {
        // TODO add your code here
    }

    private void menuItem__DeleteCustomer_MouseClicked(MouseEvent e)
    {
        // TODO add your code here
    }

    private void menuItem_UpdateCustomer_MouseClicked(MouseEvent e)
    {
        // TODO add your code here
    }

    //方法功能:初始化框架
    private void initComponents()
    {
        // JFormDesigner - Component initialization - DO NOT MODIFY  //GEN-BEGIN:initComponents
        // Generated using JFormDesigner Evaluation license - nut
        menuBar_1 = new JMenuBar();
        menu_CustomerManage = new JMenu();
        menuItem_AddCustomer = new JMenuItem();
        menuItem_QueryCustomer = new JMenuItem();
        menuItem_DeleteCustomer = new JMenuItem();
        menuItem_UpdateCustomer = new JMenuItem();
        menu_GoodsManage = new JMenu();
        menuItem_SelectGoods = new JMenuItem();
        menuItem_AddGoods = new JMenuItem();
        menuItem_DeleteGoods = new JMenuItem();
        menuItem_QueryGoods = new JMenuItem();
        menuItem_UpdateGoods = new JMenuItem();
        menu_OrderManage = new JMenu();
        menuItem_QueryOrder = new JMenuItem();
        menuItem_AddOrder = new JMenuItem();
        menu_InvoiceManage = new JMenu();
        menuItem_AddInvoice = new JMenuItem();
        menu_Own = new JMenu();
        menuItem_OwnInfo = new JMenuItem();

        //======== this ========
        setTitle("Nut Dynasty-Administrator");
        setIconImage(new ImageIcon("E:\\CodeFile\\DataBase-CustomerPurchaseManagementSystem\\Code\\src\\META-INF\\background.jpg").getImage());
        var contentPane = getContentPane();
        contentPane.setLayout(null);

        //======== menuBar_1 ========
        {

            //======== menu_CustomerManage ========
            {
                menu_CustomerManage.setText("\u5ba2\u6237\u7ba1\u7406");

                //---- menuItem_AddCustomer ----
                menuItem_AddCustomer.setText("\u65b0\u589e\u5ba2\u6237\u4fe1\u606f");
                menuItem_AddCustomer.addMouseListener(new MouseAdapter() {
                    @Override
                    public void mouseClicked(MouseEvent e) {
                        menuItem_AddCustomer_MouseClicked(e);
                    }
                });
                menuItem_AddCustomer.addActionListener(e -> menuItem_AddCustomer_ActionPerformed(e));
                menu_CustomerManage.add(menuItem_AddCustomer);

                //---- menuItem_QueryCustomer ----
                menuItem_QueryCustomer.setText("\u67e5\u8be2\u5ba2\u6237\u4fe1\u606f");
                menuItem_QueryCustomer.addMouseListener(new MouseAdapter() {
                    @Override
                    public void mouseClicked(MouseEvent e) {
                        menuItem_QueryCustomer_MouseClicked(e);
                    }
                });
                menuItem_QueryCustomer.addActionListener(e -> menuItem_QueryCustomer_ActionPerformed(e));
                menu_CustomerManage.add(menuItem_QueryCustomer);

                //---- menuItem_DeleteCustomer ----
                menuItem_DeleteCustomer.setText("\u5220\u9664\u5ba2\u6237\u4fe1\u606f");
                menuItem_DeleteCustomer.addMouseListener(new MouseAdapter() {
                    @Override
                    public void mouseClicked(MouseEvent e) {
                        menuItem__DeleteCustomer_MouseClicked(e);
                    }
                });
                menuItem_DeleteCustomer.addActionListener(e -> menuItem_DeleteCustomer_ActionPerformed(e));
                menu_CustomerManage.add(menuItem_DeleteCustomer);

                //---- menuItem_UpdateCustomer ----
                menuItem_UpdateCustomer.setText("\u4fee\u6539\u5ba2\u6237\u4fe1\u606f");
                menuItem_UpdateCustomer.addMouseListener(new MouseAdapter() {
                    @Override
                    public void mouseClicked(MouseEvent e) {
                        menuItem_UpdateCustomer_MouseClicked(e);
                    }
                });
                menuItem_UpdateCustomer.addActionListener(e -> menuItem_UpdateCustomer_ActionPerformed(e));
                menu_CustomerManage.add(menuItem_UpdateCustomer);
            }
            menuBar_1.add(menu_CustomerManage);

            //======== menu_GoodsManage ========
            {
                menu_GoodsManage.setText("\u5546\u54c1\u7ba1\u7406");

                //---- menuItem_SelectGoods ----
                menuItem_SelectGoods.setText("\u9009\u8d2d\u5546\u54c1");
                menuItem_SelectGoods.addActionListener(e -> menuItem_SelectGoods_ActionPerformed(e));
                menu_GoodsManage.add(menuItem_SelectGoods);

                //---- menuItem_AddGoods ----
                menuItem_AddGoods.setText("\u65b0\u589e\u5546\u54c1\u4fe1\u606f");
                menu_GoodsManage.add(menuItem_AddGoods);

                //---- menuItem_DeleteGoods ----
                menuItem_DeleteGoods.setText("\u5220\u9664\u5546\u54c1\u4fe1\u606f");
                menu_GoodsManage.add(menuItem_DeleteGoods);

                //---- menuItem_QueryGoods ----
                menuItem_QueryGoods.setText("\u67e5\u8be2\u5546\u54c1\u4fe1\u606f");
                menu_GoodsManage.add(menuItem_QueryGoods);

                //---- menuItem_UpdateGoods ----
                menuItem_UpdateGoods.setText("\u4fee\u6539\u5546\u54c1\u4fe1\u606f");
                menu_GoodsManage.add(menuItem_UpdateGoods);
            }
            menuBar_1.add(menu_GoodsManage);

            //======== menu_OrderManage ========
            {
                menu_OrderManage.setText("\u8ba2\u5355\u7ba1\u7406");

                //---- menuItem_QueryOrder ----
                menuItem_QueryOrder.setText("\u67e5\u8be2\u8ba2\u5355\u4fe1\u606f");
                menuItem_QueryOrder.addActionListener(e -> {
			menuItem_QueryOrder_ActionPerformed(e);
			menuItem_QueryOrder_ActionPerformed(e);
		});
                menu_OrderManage.add(menuItem_QueryOrder);

                //---- menuItem_AddOrder ----
                menuItem_AddOrder.setText("\u65b0\u589e\u8ba2\u5355\u4fe1\u606f");
                menu_OrderManage.add(menuItem_AddOrder);
            }
            menuBar_1.add(menu_OrderManage);

            //======== menu_InvoiceManage ========
            {
                menu_InvoiceManage.setText("\u53d1\u7968\u7ba1\u7406");

                //---- menuItem_AddInvoice ----
                menuItem_AddInvoice.setText("\u65b0\u589e\u53d1\u7968\u4fe1\u606f");
                menuItem_AddInvoice.addActionListener(e -> menuItem_AddInvoice_ActionPerformed(e));
                menu_InvoiceManage.add(menuItem_AddInvoice);
            }
            menuBar_1.add(menu_InvoiceManage);

            //======== menu_Own ========
            {
                menu_Own.setText("\u4e2a\u4eba\u4e2d\u5fc3");

                //---- menuItem_OwnInfo ----
                menuItem_OwnInfo.setText("\u4e2a\u4eba\u4fe1\u606f");
                menu_Own.add(menuItem_OwnInfo);
            }
            menuBar_1.add(menu_Own);
        }
        setJMenuBar(menuBar_1);

        {
            // compute preferred size
            Dimension preferredSize = new Dimension();
            for(int i = 0; i < contentPane.getComponentCount(); i++) {
                Rectangle bounds = contentPane.getComponent(i).getBounds();
                preferredSize.width = Math.max(bounds.x + bounds.width, preferredSize.width);
                preferredSize.height = Math.max(bounds.y + bounds.height, preferredSize.height);
            }
            Insets insets = contentPane.getInsets();
            preferredSize.width += insets.right;
            preferredSize.height += insets.bottom;
            contentPane.setMinimumSize(preferredSize);
            contentPane.setPreferredSize(preferredSize);
        }
        pack();
        setLocationRelativeTo(getOwner());
        // JFormDesigner - End of component initialization  //GEN-END:initComponents
    }


    // JFormDesigner - Variables declaration - DO NOT MODIFY  //GEN-BEGIN:variables
    // Generated using JFormDesigner Evaluation license - nut
    private JMenuBar menuBar_1;
    private JMenu menu_CustomerManage;
    private JMenuItem menuItem_AddCustomer;
    private JMenuItem menuItem_QueryCustomer;
    private JMenuItem menuItem_DeleteCustomer;
    private JMenuItem menuItem_UpdateCustomer;
    private JMenu menu_GoodsManage;
    private JMenuItem menuItem_SelectGoods;
    private JMenuItem menuItem_AddGoods;
    private JMenuItem menuItem_DeleteGoods;
    private JMenuItem menuItem_QueryGoods;
    private JMenuItem menuItem_UpdateGoods;
    private JMenu menu_OrderManage;
    private JMenuItem menuItem_QueryOrder;
    private JMenuItem menuItem_AddOrder;
    private JMenu menu_InvoiceManage;
    private JMenuItem menuItem_AddInvoice;
    private JMenu menu_Own;
    private JMenuItem menuItem_OwnInfo;
    // JFormDesigner - End of variables declaration  //GEN-END:variables
}

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值