精华内容
下载资源
问答
  • 想实现商品的分类显示,但是不知道怎样从jsp页面传值给dao层,以及查询语句怎么写? 求大神帮助。 这是jsp页面: ``` <%@ page language="java" import="java.util.*" contentType="text/html; ...
  • 显示商品信息(java web)-附件资源
  • JAVA Swing 实现商品列表,数量加减 ,删除整行 Demo 单击 "添加 "按钮列表增加数据行 单击 数量单元格弹出数量加减窗口 单击 "删除"按钮 删掉当前行商品信息
  • 显示商品信息(java web)

    千次阅读 2019-03-24 15:29:42
    在jsp页面中显示手机商品的信息。 二.思想步骤 2.1收集手机图片信息,价格信息,手机名信息等。 2.2 创建mysql数据库,新建表,将信息存入表中。 2.4 创建三个类(DataSourceUtils,product,product_...

    一.目的

         在jsp页面中显示手机商品的信息。

    二.思想步骤

         2.1收集手机图片信息,价格信息,手机名信息等。

         2.2 创建mysql数据库,新建表,将信息存入表中。

         2.4 创建三个类(DataSourceUtils,product,product_servlet)

                2.4.1 DataSourceUtils数据库连接池

                2.4.2 product 存储获取到商品信息

                2.4.3 product_servlet 连接数据库,获取信息,并将product对象存在List集合中,再将集合设置在requset域中,转发到jsp页面。

          2.5 创建jsp页面 ,获取request域中的List集合,遍历集合,通过jsp脚本代码将信息显示在页面上。

    三.实际步骤

          3.1 mysql数据

          3.1.1 创建数据库 ,数据库名:product,创建新表,表名:message.

               

            3.1.2 将数据存到message表中  (手机信息百度云:https://pan.baidu.com/s/1fMKzWmpuO3FTiRHjhn4Nkg 提取码:xrc8)。

                 

       3.1.3 存储成功

             

           3.2 java代码

           3.2.1 DataSourceUtils 类    

    (注意此处需要导入jar包,并且需要将修改好了的c3p0-config.xml 配置文件,放在web项目的src目录下,)

      https://pan.baidu.com/s/1eev43QR5TAFKi_ZRqIn_PQ   提取码:ebcw(此处是jar包和xml配置文件)

    package cn.jsp.getdate;
    
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import javax.sql.DataSource;
    import com.mchange.v2.c3p0.ComboPooledDataSource;
    
    public class DataSourceUtils {
    
       private static DataSource dataSource = new ComboPooledDataSource();
    
       private static ThreadLocal<Connection> tl = new ThreadLocal<Connection>();
    
       // 直接可以获取一个连接池
       public static DataSource getDataSource() {
          return dataSource;
       }
    
       // 获取连接对象
       public static Connection getConnection() throws SQLException {
    
          Connection con = tl.get();
          if (con == null) {
             con = dataSource.getConnection();
             tl.set(con);
          }
          return con;
       }
    
       // 开启事务
       public static void startTransaction() throws SQLException {
          Connection con = getConnection();
          if (con != null) {
             con.setAutoCommit(false);
          }
       }
    
       // 事务回滚
       public static void rollback() throws SQLException {
          Connection con = getConnection();
          if (con != null) {
             con.rollback();
          }
       }
    
       // 提交并且 关闭资源及从ThreadLocall中释放
       public static void commitAndRelease() throws SQLException {
          Connection con = getConnection();
          if (con != null) {
             con.commit(); // 事务提交
             con.close();// 关闭资源
             tl.remove();// 从线程绑定中移除
          }
       }
    
       // 关闭资源方法
       public static void closeConnection() throws SQLException {
          Connection con = getConnection();
          if (con != null) {
             con.close();
          }
       }
    
       public static void closeStatement(Statement st) throws SQLException {
          if (st != null) {
             st.close();
          }
       }
    
       public static void closeResultSet(ResultSet rs) throws SQLException {
          if (rs != null) {
             rs.close();
          }
       }
    
    }
    

     

     

     

     

    3.2.2 product 类(JavaBean)

    package cn.jsp.getdate;
    
    public class product {
    
        int id;
        String product_name;
        String product_img;
        double product_money;
    
        public int getId() {
            return id;
        }
    
        public void setId(int id) {
            this.id = id;
        }
    
        public String getProduct_name() {
            return product_name;
        }
    
        public void setProduct_name(String product_name) {
            this.product_name = product_name;
        }
    
        public String getProduct_img() {
            return product_img;
        }
    
        public void setProduct_img(String product_img) {
            this.product_img = product_img;
        }
    
        public double getProduct_money() {
            return product_money;
        }
    
        public void setProduct_money(double product_money) {
            this.product_money = product_money;
        }
    
    
    }
    
    

     

    3.2.3  product_servlet 类

    package cn.jsp.getdate;
    
    import org.apache.commons.dbutils.QueryRunner;
    import org.apache.commons.dbutils.handlers.BeanListHandler;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.sql.SQLException;
    import java.util.List;
    
    
    public class product_servlet extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
           // 连接数据库编写sql语句,获取数据。
            QueryRunner runner=new QueryRunner(DataSourceUtils.getDataSource());
            String sql="select * from message";
            //将数据存在List集合中
            List<product> products=null;
            try {
                products = runner.query(sql,new BeanListHandler<product>(product.class));
            }catch (SQLException e){
                e.printStackTrace();
            }
            //将list集合存在request域中;
            request.setAttribute("productsList",products);
            //转发到show_product.jsp 页面进行显示
            request.getRequestDispatcher("/show_product.jsp").forward(request,response);
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            this.doPost(request,response);
        }
    
    }
    

     

     

    3.2.4 jsp页面

    <%@ page import="java.util.List" %>
    <%@ page import="cn.jsp.getdate.product" %><%--
      Created by IntelliJ IDEA.
      User: Administrator
      Date: 2019/3/19
      Time: 19:39
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Show_Product</title>
        <link  rel="stylesheet" type="text/css" href="css/show_Product.css"/>
    </head>
    <body>
    <!--导航栏-->
    <div id="page">
        <div id="AppBar">
            <!--logo-->
            <div class="logo">Second-hand mobile
                <br/>phone</div>
            <ul>
                <li>首页</li>
                <li>商店</li>
                <li>app下载</li>
                <li>联系我们</li>
            </ul>
        </div>
       <!-- 显示商品-->
        <div id="commodity">
    
            <%
    //            System.out.println(request.getAttribute("productsList"));
                List<product> products=(List<product>)request.getAttribute("productsList");
                if(products!=null){
            %>
            <div class="low">
                <%
    
                    for (product product:products){
                %>
                <ul>
                    <li class="img"><img src="<%=product.getProduct_img()%>" class="mobile_phone"/></li>
                    <li class="name"><%= product.getProduct_name()%></li>
                    <li class="money">¥<%= product.getProduct_money()%></li>
                    <li class="affirm">购买</li>
                </ul>
                <%
                    }
                %>
           </div>
            <%
                }
            %>
        </div>
    </div>
    </body>
    </html>
    

    3.2.5 jsp 的css样式

    *{
        margin: 0px;
        padding: 0px;
    }
    #page{
         width: 100%;
     }
    #AppBar{
        width: 100%;
        height: 50px;
        background-color: #9278f7;
        padding-top: 25px;
    }
    #page .logo{
        float: left;
        width: 20%;
        height: 55px;
        background-color: #6b6b6b;
        margin-left: 25px;
        margin-top: -25px;
        text-align: center;
        font-family: "楷体";
        font-size: 16px;
        color: white;
        padding-top: 20px;
        opacity: 0.7;
    }
    #page #AppBar ul li{
        width: 10%;
        height: 45px;
        float: left;
        margin-left: 10px;
        text-align: center;
        list-style: none;
        font-size: 15px;
        color: wheat;
    }
    #commodity{
    
        width: 100%;
        background-color: #FFFDFE;
    }
    #commodity .low{
        width: 100%;
    }
    #commodity .low ul{
        margin: 50px;
        list-style: none;
        float: right;
    }
    #commodity .low .img{
        width: 150px;
        height: 150px;
        border: 1px dotted #333333;
    }
    .mobile_phone{
        width: 100%;
        height: 100%;
    }
    #commodity .low .name{
        width: 150px;
        height: 45px;
        font-family: "宋体";
        font-size: 10px;
        text-align: center;
    }
    #commodity .low .money{
        width: 150px;
        height: 21px;
        font-family: "宋体";
        font-size: 10px;
        text-align: center;
        color: red;
    }
    #commodity .low .affirm{
        width: 150px;
        height: 21px;
        background-color: #07524C;
        font-size: 12px;
        color: white;
        text-align: center;
        cursor: pointer;
    
    }
    

     

    四.演示

           发布项目,根据自己的项目输入http://localhost:8080/web_war_exploded/product 

           

     

     

    展开全文
  • Java商品信息系统

    千次阅读 2018-08-28 16:37:14
    一份简易的java基础利用ArrayList集合实现的增...2、创建vo.java商品私有属性类: package com.neusoft.product.vo; public class Product { // 成员属性 private int id; private double price; private...

    一份简易的java基础利用ArrayList集合实现的增删改查的商品信息小系统。

    1、创建项目
    2、创建vo.java商品私有属性类:
    package com.neusoft.product.vo;

    public class Product {
    // 成员属性
    private int id;
    private double price;
    private String name;
    private String address;

    // 提供访问器
    public int getId() {
        return id;
    }
    
    public void setId(int id) {
        this.id = id;
    }
    
    public double getPrice() {
        return price;
    }
    
    public void setPrice(double price) {
        this.price = price;
    }
    
    public String getName() {
        return name;
    }
    
    public void setName(String name) {
        this.name = name;
    }
    
    public String getAddress() {
        return address;
    }
    
    public void setAddress(String address) {
        this.address = address;
    }
    
    // 商品构造方法
    public Product(int id, double price, String name, String address) {
        super();
        this.id = id;
        this.price = price;
        this.name = name;
        this.address = address;
    }
    
    // 无参构造方法
    public Product() {
        super();
    }
    

    }

    3、数据交流dao.java的界面:
    package com.neusoft.product.dao;

    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.Iterator;
    import java.util.LinkedList;
    import java.util.Scanner;

    import com.neusoft.product.vo.Product;

    public class PruDao {

    Scanner sc = new Scanner(System.in);
    ArrayList<Product> prd = new ArrayList<>();
    Product p = new Product();
    
    public PruDao() {
        Product p1 = new Product(1, 4.0, "可乐", "大连");
        Product p2 = new Product(2, 10.0, "辣条", "北京");
        Product p3 = new Product(3, 3.0, "雪碧", "天津");
        prd.add(p1);
        prd.add(p2);
        prd.add(p3);
    }
    
    public void pruMain() {
        while (true) {
            System.out.println("*******欢迎进入商品区*******");
            System.out.println("1、增加商品");
            System.out.println("2、刪除商品");
            System.out.println("3、修改商品");
            System.out.println("4、查询商品一个");
            System.out.println("5、查询商品全部");
            System.out.println("请选择操作: ");
            int input = sc.nextInt();
            switch (input) {
            case 1:
                insertProduct();
                break;
            case 2:
                deleteProduct();
                break;
            case 3:
                updateProduct();
                break;
            case 4:
                QueryOneProduct();
                break;
            case 5:
                QueryAllProduct();
                break;
    
            default:
                System.out.println("您输入的数字无效!");
                break;
            }
    
        }
    }
    
    // 功能部分
    // 增加商品
    public void insertProduct() {
        System.out.println("输入商品:商品号,价格,名字,生产地址");
        int id = sc.nextInt();
        double price = sc.nextDouble();
        String name = sc.next();
        String address = sc.next();
        Product pru = new Product(id, price, name, address);
        prd.add(pru);
        System.out.println("--------添加完成--------");
        System.out.println();
        QueryAllProduct();
    }
    
    // 删除商品
    public void deleteProduct() {
        System.out.println("请输入删除的商品号");
        int a = sc.nextInt();
        for (int i = 0; i < prd.size(); i++) {
            if (a == prd.get(i).getId()) {
                prd.remove(i);
    
            }
        }
        System.out.println("--------删除成功--------");
        System.out.println();
    }
    
    // 修改商品
    public void updateProduct() {
        QueryAllProduct();
        System.out.println("请选择修改的商品属性:1、商品号 2、商品价格 3、商品名 4、生产地址");
        int s = sc.nextInt();
        /*
         * 根据输入数字选择修改商品的属性
         */
        switch (s) {
        case 1:
            System.out.println("请输入商品号");
            int a = sc.nextInt();
            int i=0;
            for ( i = 0; i < prd.size(); i++) {
                if (a == prd.get(i).getId()) {
                    System.out.println("请输入新的商品号");
                    int b = sc.nextInt();
                    prd.get(i).setId(b);
                    System.out.println("--------修改成功--------");
                    QueryAllProduct();
                }
            }
    
            break;
        case 2:
    
            System.out.println("请输入商品号");
            int a1 = sc.nextInt();
            int j=0;
            for (j = 0; j < prd.size(); j++) {
                if (a1 == prd.get(j).getId()){
                    System.out.println("请输入新的商品价格");
                    double d = sc.nextDouble();
                    prd.get(j).setPrice(d);
                    System.out.println("--------修改成功--------");
                    QueryAllProduct();
                }
    
            }
    
            break;
        case 3:
            System.out.println("请输入商品号");
            int a2 = sc.nextInt();
            int t=0;
            for ( t = 0; t < prd.size(); t++) {
                if (a2 == prd.get(t).getId()) {
                    System.out.println("请输入新的商品名");
                    String s1 = sc.next();
                    prd.get(t).setName(s1);
                    System.out.println("--------修改成功--------");
                    QueryAllProduct();
                }
            }
    
            break;
        case 4:
            System.out.println("请输入商品号");
            int a3 = sc.nextInt();
            int m=0;
            for ( m = 0; m < prd.size(); m++) {
                if (a3 == prd.get(m).getId()) {
                    System.out.println("请输入新的生产地址");
                    String s2 = sc.next();
                    prd.get(m).setAddress(s2);
                    System.out.println("--------修改成功--------");
                    QueryAllProduct();
                }
    
            }
    
            break;
        default:
            System.out.println("--------找不到商品属性--------");
            System.out.println();
            break;
        }
    
    }
    
    // 查询商品一个
    public void QueryOneProduct() {
        System.out.println("请输入商品号");
        int a = sc.nextInt();
        int i = 0;
        for (i = 0; i < prd.size(); i++) {
    
            if (prd.get(i).getId() == a) {
                System.out.println(" 商品号:" + prd.get(i).getId() + " 商品价格:" + prd.get(i).getPrice() + " 商品名:"
                        + prd.get(i).getName() + " 生产地址:" + prd.get(i).getAddress());
                System.out.println();
                break;
            }
    
        }
        if (i == prd.size()) {
            System.out.println("--------没有此商品--------");
            System.out.println();
        }
    }
    
    // 查询商品全部
    public void QueryAllProduct() {
    
        for (int i = 0; i < prd.size(); i++) {
            System.out.println("商品号:" + prd.get(i).getId() + " 商品价格:" + prd.get(i).getPrice() + " 商品名:"
                    + prd.get(i).getName() + " 生产地址:" + prd.get(i).getAddress());
        }
        System.out.println();
    }
    

    }

    4、创建界面显示ui.java:
    package com.neusoft.product.ui;

    import java.util.Scanner;

    import com.neusoft.product.dao.PruDao;

    public class pruUi {

    public void login() {
        // TODO Auto-generated constructor stub
        // 页面实现
        System.out.println("----------欢迎来到商品管理系统---------");
        System.out.println("1、登陆");
        System.out.println("2、退出");
        // 键盘录入
        int i = 3;
        for (;;) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入1或者2");
            int input = sc.nextInt();
    
            if (input == 1) {
                System.out.println("请输入用户名字和密码");
                String name = sc.next();
                String pass = sc.next();
                if ("admin".equals(name) && "123".equals(pass)) {
                    PruDao dao = new PruDao();
                    dao.pruMain();
                    break;
                } else {
    
                    i--;
                    if (i > 0) {
                        System.out.println("输入的用户名和密码错误,请重新输入,有" + i + "次机会");
                        System.out.println("-----------------------");
                    } else if (i == 0) {
                        System.out.println("------登陆失败,已退出系统------");
                        System.exit(0);
                    }
                }
            } else if (input == 2) {
    
                System.out.println("----------退出系统----------");
                System.exit(0);
    
            } else {
                System.out.println("您输入的数字无效");
                System.out.println("请重新输入");
            }
        }
    }
    

    }
    5、可创建一个服务类service.java进行数据处理(可扩展,在这没实现这个功能)
    package com.neusoft.product.service;

    public class PruService {
    // 业务处理

    }
    6、测试类test:
    package com.neusoft.product.test;

    import com.neusoft.product.ui.pruUi;

    public class Test {

    public static void main(String[] args) {
        // 调用ui类,登陆
        pruUi ui = new pruUi();
        ui.login();
    
    }
    

    }

    展开全文
  • JAVA实现商品信息管理系统

    万次阅读 多人点赞 2019-10-14 20:43:56
    任务与实现 超市商品管理系统 题目要求 超市中商品分为四类,分别是食品、化妆品、日用品和饮料。...购买商品时,先输入类别,然后输入商品名称,并在库存中查找该商品的相关信息。如果有库存量,输入购买...

    超市商品管理系统

    点此下载源码

    题目要求

    超市中商品分为四类,分别是食品、化妆品、日用品和饮料。每种商品都包含商品名称、价格、库存量和生产厂家、品牌等信息。主要完成对商品的销售、统计和简单管理。这个题目相对简单,可以用一张表实现信息的保存和处理,因此不再给出数据库设计参考。
    功能要求
    (1)销售功能。
      购买商品时,先输入类别,然后输入商品名称,并在库存中查找该商品的相关信息。如果有库存量,输入购买的数量,进行相应计算。如果库存量不够,给出提示信息,结束购买。
    (2)商品简单管理功能。
      添加功能:主要完成商品信息的添加。
      查询功能:可按商品类别、商品名称、生产厂家进行查询。若存在相应信息,输出所查询的信息,若不存在该记录,则提示“该记录不存在!”。
      修改功能:可根据查询结果对相应的记录进行修改。
      删除功能:主要完成商品信息的删除。先输入商品类别,再输入要删除的商品名称,根据查询结果删除该物品的记录,如果该商品不在物品库中,则提示“该商品不存在”。
    (3)统计功能。
      输出当前库存中所有商品的总数及详细信息;可按商品的价格、库存量、生产厂家进行统计,输出统计信息时,要按从大到小进行排序。
    (7)商品信息存盘:将当前程序中的商品信息存入文件中。
    (8)读出信息:从文件中将商品信息读入程序。

    问题的解决方案

    根据系统功能要求,可以将问题解决分为以下步骤:
    (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;
    (2)分析系统中的各个实体及它们之间的关系;
    (3)根据问题描述,设计系统的类层次;
    (4)完成类层次中各个类的描述;
    (5)完成类中各个成员函数的定义;
    (6)完成系统的应用模块;
    (7)功能调试;

    设计思路

    可以对超市商品进行管理的人员主要有超市的商家和顾客,商家可以对超市的商品进行增﹑删﹑改﹑查操作,而顾客只能查询和购买商品。增加商品时,要添加商品的全部信息(编号﹑类别﹑名称﹑价格﹑库存量﹑品牌﹑生产厂家),删除时只需要输入商品编号便可删除该商品的全部信息,修改时要先输入商品编号,然后再确定要修改该商品的哪一个值,以及要将该值修改为什么,查询时只要输入想要查询商品的任意一个信息并选择商品类别便可查出该商品的全部信息。

    实现:

    建立并连接数据库与基本表

    连接数据库时需要用到JDBC,它由Java编程语言编写的类和接口组成,是实现Java与各种数据库连接的关键,提供了将Java与数据库连接起来的程序接口,使用户可以以SQL的形式编写访问请求,然后传给数据库,其结果再由这一接口返回,从而实现对数据库中数据操作的目的。超市商品管理系统采用了MySQL作为数据库,所建的系统数据库名为“goods”。通过需求分析、概念设计与逻辑设计,可知该系统数据库只需建立一个商品表即可

    结构设计

    该系统用于对商品的基本信息进行管理,主要包括添加、修改、查询和删除商品基本信息,为了方便,全部操作均在界面中完成。由此,将该系统结构设计为登录模块、顾客模块、商家模块。由于涉及界面设计,因此调用了java.awt.、java.awt.event.、javax.swing.、java.util.、javax.swing.event.*、java.sql.*等包。

    实现登录模块

    要生成一个界面,可应用AWT知识。设置其名字为商品信息管理系统;设置布局管理器为(null)布局管理器,方便往其中放组件;设置窗口大小和位置,还要设置窗口可见性。
    生成界面后,接下来就需要实现每个功能,第一个功能就是要对操作对象的身份进行选择,这里要用下拉列表的形式进行选择,也可以用单选按钮来完成这个功能。在这项功能中,首先要选择身份,所以要定义一个JLabel来说明,定义完JLabel后,就需要定义一个JComoBox,下拉列表框。 
    输入用户名和密码。需要用两个JLabel来指明需要输入用户名和密码。输入用户名需要定义一个JTextField,单文本框。同时输入文本,但输入密码和输入用户名是不一样的,它需要定义成JPasswordField,它的输出结果为“*****”这样的形式。 
    创建两个按钮,一个是登录按钮,另一个是取消登录按钮,用来输入的用户名和密码及选择的身份进行提交,然后根据选择的身份来选择需要进入那个界面,其代码如下:

    public class info_Manage extends JFrame implements ActionListener{
    	private JLabel username = new JLabel("用户名");
    	private JTextField userName = new JTextField();		
    	private JLabel psw = new JLabel("密码");	
    	private JPasswordField Psw = new JPasswordField();
    	JLabel jlp=new JLabel("身份");
    	String str[]={"顾客","商家"};
    	JComboBox jcb=new JComboBox(str);	
    	private JButton jb1 = new JButton("登录");
    	private JButton jb2 = new JButton("取消");	
    	public info_Manage(){		
    		this.setTitle("商品信息管理系统");
    		this.setLayout(null);
    		username.setBounds(100,50,100,20);
    		this.add(username);		
    		userName.setBounds(150,50,100,20);
    		this.add(userName);
    		psw.setBounds(100,100,100,20);
    		this.add(psw);
    		Psw.setBounds(150,100,100,20);
    		this.add(Psw);
    		jlp.setBounds(100,150,100,20);
    		this.add(jlp);
    		jcb.setBounds(150,150,100,20);
    		this.add(jcb);
    		jcb.addActionListener(this);
    		jb1.setBounds(100,210,60,20);
    		this.add(jb1);
    		jb1.addActionListener(this);
    		jb2.setBounds(200,210,60,20);
    		this.add(jb2);     
    		jb2.addActionListener(this);
    		this.setVisible(true);
    		this.setBounds(10,10,390,330);
    		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	}
    	public static void main(String[] args) {
    		new info_Manage();
    	}
    	public void actionPerformed(ActionEvent e) {		
    		if (e.getSource() == jb1) {
    			String name=userName.getText();
    			String password = new String(Psw.getPassword());
    			if(name.length()==0&&password.length()!=0)
    				JOptionPane.showMessageDialog( null, "请输入用户名");
    			else  if(name.length()!=0&&password.length()==0)
    				JOptionPane.showMessageDialog( null, "请输入密码");
    			else if(name.length()==0&&name.length()==0)
    					JOptionPane.showMessageDialog( null, "请输入用户名和密码");
    			else if(jcb.getSelectedIndex()==0&&name.length()!=0&&name.length()!=0)
    				new custom_Manage();
    			else if(jcb.getSelectedIndex()==1&&name.length()!=0&&password.length()!=0)
    				new seller_Manage();
    		}
    		else if(e.getSource()==jb2)
    			System.exit(0);
    	}
    }
    

    运行结果
    在这里插入图片描述

    实现顾客操作界面

    当选择“顾客”时,单击“登录”按钮就可以进入顾客操作系统了,然后就可以对摸个学生的信息进行输入、修改和删除,也能对同学的信息进行查询和对程序进行查询。当打算离开时,还要有一个选项用来退出学生信息管理系统。根据设计构想,首先要搭建一个界面,然后把顾客的操作分为2大块,分别是商品信息查询和退出登录,其部分代码如下:

    class custom_Manage extends JFrame implements ActionListener{
    	JMenu cm=new JMenu("请选择您需要的操作:");
    	JButton cm1=new JButton("商品信息查询");
    	JButton cm2=new JButton("退出登录");
    	public void actionPerformed(ActionEvent e){
    		 if(e.getSource()==cm1)new SetGoods();
    		else if(e.getSource()==cm2)	this.setVisible(false);
    	}
    }
    

    运行结果
    在这里插入图片描述
    商家操作界面相比顾客操作界面多了商品信息的增加﹑删除和修改功能,其实现方法与顾客操作界面类似,在此不再赘述。

    添加商品信息

    每个按钮都对应着一个操作界面,当点击商家操作下的“增加商品信息”按钮时,将弹出如图所示的界面,它调用了AddGoods.java类实现该功能。通过对“增加信息”这一子菜单设置监听,弹出界面。AddGoods.java的部分代码如下:

    class AddGoods extends JFrame implements ActionListener {
    	JLabel JL = new JLabel("添加基本信息:");
    	JLabel number = new JLabel("商品编号");
    	JTextField Number = new JTextField();
    	
    	JLabel JClass=new JLabel("类别");
    	String str[]={"食品","化妆品","日用品","饮料"};
    	JComboBox jcb=new JComboBox(str);
    	
    	JLabel name = new JLabel("商品名称");
    	JTextField Name = new JTextField();
    	JLabel price=new JLabel("商品价格");
    	JTextField Price = new JTextField();
    	JLabel storage= new JLabel("库存量");
    	JTextField Storage = new JTextField();
    	JLabel brand= new JLabel("品牌");
    	JTextField Brand = new JTextField();
    	JLabel vender = new JLabel("生产厂家");
    	JTextField Vender = new JTextField();
    	
    	JTextField jt=new JTextField(10);
    	JButton Add = new JButton("添加");
    	JButton Reset = new JButton("重置");
    	JButton Exit = new JButton("退出");
    	String sql = "";
    
    	public void actionPerformed(ActionEvent e) {
    		if(e.getSource()==Add) {
    			String snumber=Number.getText();
    			String svender=Vender.getText();
    			String sname=Name.getText();
    			String sprice=Price.getText();
    			String sstorage=Storage.getText();
    			String sbrand=Brand.getText();
    			try {
    				Connection cot=ConnectionFactory.getConnection();
    				Statement stm=cot.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_UPDATABLE );
    				int s=jcb.getSelectedIndex();
    				String jc=null;
    				if(s==0)jc="食品";
    				else if(s==1)jc="化妆品";
    				else if(s==2)jc="日用品";
    				else if(s==3)jc="饮料";
    sql="insert into goods values('"+snumber+"','"+jc+"','"+sname+"',"+sprice+","+sstorage+",'"+sbrand+"','"+svender+"')";
    				int n=stm.executeUpdate(sql);
    				if(n!=0)JOptionPane.showMessageDialog(null,"添加成功!");
    				else JOptionPane.showMessageDialog(null,"该商品已存在!");
    			}catch(Exception ee) {
    				ee.printStackTrace();
    			}
    		}
    		if(e.getSource()==Reset) {
    			Number.setText(null);
    			Name.setText(null);
    			Vender.setText(null);
    			Price.setText(null);
    			Storage.setText(null);
    			Brand.setText(null);
    		}
    		if(e.getSource()==Exit) {
    			this.setVisible(false);
    		}
    	}
    }
    

    运行结果在这里插入图片描述

    删除商品信息

    当选择商家操作系统下的删除商品信息的按钮时,将弹出图4-4所示的界面,它调用了DeleteGoodst.java类实现该功能,其部分代码如下:

    class DeleteGoods extends JFrame implements ActionListener {
    	JMenu JL = new JMenu("删除基本信息");
    	JLabel number = new JLabel("商品编号");
    	JTextField Number = new JTextField();
    	JButton Del = new JButton("删除");
    	JButton Reset = new JButton("重置");
    	JButton Exit = new JButton("退出");
    	String sql = "";
    
    public void actionPerformed(ActionEvent e) {
    		if (e.getSource() == Del) {
    			Statement stm=null;
    			Connection cot;
    			try {
    				cot=ConnectionFactory.getConnection();
    				stm= cot.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_UPDATABLE );
    				sql ="delete from goods where number='"+Number.getText()+"'";
    				int n = stm.executeUpdate(sql);
    				if (n!=0)
    					JOptionPane.showMessageDialog(null, "删除成功!");
    				else
    				JOptionPane.showMessageDialog(null, "删除失败!");
    			} catch (SQLException e1) {
    				JOptionPane.showMessageDialog(null, "此商品不存在!");
    				e1.printStackTrace();
    			}
    		}
    		if (e.getSource() == Reset) {
    			Number.setText(null);
    		}
    		if (e.getSource() == Exit)
    			this.setVisible(false);
    	}
    }                     
    

    如图,只需输入商品编号便可删除该商品的全部信息。
    在这里插入图片描述

    修改商品信息

    当选择商家操作系统下的“修改信息”按钮时,将弹出界面,只要输入商品的编号,然后选择所要修改的该编号商品的列名,最后输入想要将其修改成为的值,即可修改该商品的某一项信息。用了GetGoods.java类实现该功能。其部分代码如下:

    class GetGoods extends JFrame implements ActionListener{
    	JLabel JL = new JLabel("修改商品信息", JLabel.CENTER);
    	JLabel number = new JLabel("请输入您要修改的商品编号");
    	JTextField Number = new JTextField();	
    	JLabel massage = new JLabel("请输入您要修改的商品信息");
    	JTextField Massage = new JTextField();	
    	JLabel afterget=new JLabel("您想要将该列信息修改为:");
    	JTextField Afterget = new JTextField();	
    	JTextField jt=new JTextField(10);
    	JButton Get = new JButton("修改");
    	JButton Reset = new JButton("重置");
    	JButton Exit = new JButton("退出");
    	String sql = "";
    public void actionPerformed(ActionEvent e){
    		if(e.getSource()==Get){
    			Statement stm=null;
    			Connection cot;
    			try{
    				cot=ConnectionFactory.getConnection();				stm=cot.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_UPDATABLE );
    				sql="update goods set "+Massage.getText()+"='"+Afterget.getText()+"' where number='"+Number.getText()+"'";
    				int n=stm.executeUpdate(sql);
    				if(n!=0)JOptionPane.showMessageDialog(null,"修改成功!");
    				else JOptionPane.showMessageDialog(null,"修改失败!");
    			}catch(Exception er){
    				er.printStackTrace();
    			}
    		}
    		if(e.getSource()==Reset){
    			Number.setText(null);
    			Massage.setText(null);
    			Afterget.setText(null);
    		}
    		if(e.getSource()==Exit) {
    			this.setVisible(false);
    		}
    	}
    }
    

    运行结果在这里插入图片描述

    查询商品信息

    当选择顾客或者商家操作系统下的“查询商品信息”按钮时,将弹出如图所示的界面,它调用了SetGoods.java类实现该功能,部分代码如下:

    class SetGoods extends JFrame implements ActionListener {
    	JLabel JL = new JLabel("请用以下任意一种方式查询您想要的东西", JLabel.CENTER);
    	JLabel number = new JLabel("商品编号");
    	JTextField Number = new JTextField();	
    	JLabel JClass=new JLabel("类别");
    	String str[]={"无","食品","化妆品","日用品","饮料"};
    	JComboBox jcb=new JComboBox(str);	
    	JLabel name = new JLabel("商品名称");
    	JTextField Name = new JTextField();
    	JLabel price=new JLabel("商品价格");
    	JTextField Price = new JTextField();
    	JLabel brand= new JLabel("品牌");
    	JTextField Brand = new JTextField();
    	JLabel vender = new JLabel("生产厂家");
    	JTextField Vender = new JTextField();	
    	JTextField jt=new JTextField(10);
    	JButton Set = new JButton("查询");
    	JButton purchase = new JButton("购买");
    	JButton Reset = new JButton("重置");
    	JButton Exit = new JButton("退出");
    	String sql = "";
    public void actionPerformed(ActionEvent e) {
    		if (e.getSource() == Set) {
    			Statement stm=null;
    			Connection cot;
    			try{
    				cot=ConnectionFactory.getConnection();
    stm=cot.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_UPDATABLE );
    				if(Number.getText()!=null)
    					sql="select * from goods where number='"+Number.getText()+"'";
    				else if(Name.getText()!=null)
    					sql="select * from goods where name='"+Name.getText()+"'";
    				else if(Price.getText()!=null)
    					sql="select * from goods where price='"+Price.getText()+"'";
    				else if(Brand.getText()!=null)
    					sql="select * from goods where brand='"+Brand.getText()+"'";
    				else if(Vender.getText()!=null)
    					sql="select * from goods where vender='"+Vender.getText()+"'";
    				ResultSet rs=stm.executeQuery(sql);
    				while(rs.next()) {
    					System.out.println("商品编号: "+Number.getText());
    					int s=jcb.getSelectedIndex();
    					if(s==0)
    					JOptionPane.showMessageDialog( null, "请选择商品类别!" );
    					else if(s==1)System.out.println("商品类别: 食品");
    					else if(s==2)System.out.println("商品类别: 化妆品");
    					else if(s==3)System.out.println("商品类别: 日用品");
    					else if(s==4)System.out.println("商品类别: 饮料");
    					System.out.println("商品名称: "+rs.getString("name"));
    					System.out.println("价格: "+rs.getString("price"));
    					System.out.println("库存量: "+rs.getString("storage"));
    					System.out.println("品牌: "+rs.getString("brand"));
    					System.out.println("生产厂家: "+rs.getString("vender"));
    				}
    			}catch(Exception ee){
    				JOptionPane.showMessageDialog( null, "该商品不存在!" );
    				ee.printStackTrace();
    			}
    		}
    		else if(e.getSource()==purchase){new Purchase();}
    		else if(e.getSource()==Reset){
    			Number.setText(null);
    			Name.setText(null);
    			Vender.setText(null);
    			Price.setText(null);
    			Brand.setText(null);
    		}
    		else if(e.getSource()==Exit) {
    this.setVisible(false);
    }}}
    

    运行结果在这里插入图片描述

    退出系统

    当在对商品进行增加﹑删除﹑修改和查询的界面时,点击“退出”按钮,即可弹出如图4-7所示界面,它调用了UsingExit.java类实现该功能,部分代码如下:

    class UsingExit extends JFrame implements ActionListener{
    	JLabel Info=new JLabel("确认退出?");
    	JButton JExit=new JButton("确认");
    	JButton Cancel=new JButton("取消");
    public void actionPerformed(ActionEvent e){
    		if(e.getSource()==JExit)
    			System.exit(0);
    		else if(e.getSource()==Cancel)
    			setVisible(false);
    	}
    }
    

    运行结果如图:
    在这里插入图片描述

    点此下载源码

    展开全文
  • 包含商品库存信息查看、商品信息修改,新增商品信息,删除信息等功能。 二、功能清单 1、查询,如图 查询界面,请从数据库查询学生信息表数据并显示在控件上,通过底部功能菜单执行相应功能,添加、修改按钮点击...

    一、概述

    为了管理好商店库存信息,提升店铺管理工作效率,结合实际工作需要,设计和开发本系统,主要用于商店商品信息维护出入库等。包含商品库存信息查看、商品信息修改,新增商品信息,删除信息等功能。

    二、功能清单

    1、查询如图

    查询界面,请从数据库查询学生信息表数据并显示在控件上,通过底部功能菜单执行相应功能,添加、修改按钮点击后课弹出相应窗体执行相应操作,点击刷新按钮课刷新当前数据,删除按钮点击后可删除选中行数据并刷新

    2、添加,如图

    填写姓名和班级后,点击添加按钮后可添加数据

    3、修改,如图

    通过点击查询界面中“修改按钮”,可在修改界面修改当前选中行数据

    三、数据库

    注意:数据库名称为“班级_姓名”,如“1705_小白”。

    表名称:tGoods

    字段

    字段名

    数据类型

    描述

    约束

    goodsID

    int

    商品编号

    主键自增长

    name

    varchar(20)

    商品名称

    typeName

    varchar(20)

    类别名称

    stock

    Int

    库存

    评分规则(共100分)

    标题

    分值

    合理注释

    10分

    命名规范

    10分

    查询

    20分

    修改

    10分

    删除

    10分

    添加

    10分

    数据库创建

    10分

    数据库连接

    10分

    整体效果

    10分

    实现代码:

    数据库 链接: https://pan-yz.chaoxing.com/external/m/file/483246110958415872

    Java文件 链接: https://pan-yz.chaoxing.com/external/m/file/483246085097291776

    数据库:

    -- ----------------------------
    -- Table structure for tgoods
    -- ----------------------------
    DROP TABLE IF EXISTS `tgoods`;
    CREATE TABLE `tgoods` (
      `goodsID` int(11) NOT NULL AUTO_INCREMENT,
      `name` varchar(20) DEFAULT NULL,
      `typeName` varchar(20) DEFAULT NULL,
      `stock` int(11) DEFAULT NULL,
      PRIMARY KEY (`goodsID`)
    ) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
    
    -- ----------------------------
    -- Records of tgoods
    -- ----------------------------
    INSERT INTO `tgoods` VALUES ('9', '统一冰红茶', '饮料', '24');
    INSERT INTO `tgoods` VALUES ('10', '娃哈哈营养快线', '饮料', '23');

    com.test.db >>> DbConnection

    package com.test.db;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    import com.mysql.jdbc.Statement;
    
    public class DbConnection {
    	//驱动类的类名
    	private static final String DRIVERNAME="com.mysql.jdbc.Driver";
    	//连接数据的URL路径
    	private static final String URL="jdbc:mysql://localhost:3306/1902_杨明金";
    	//数据库登录账号
    	private static final String USER="root";
    	//数据库登录密码
    	private static final String PASSWORD="root123";
    	//加载驱动
    	static{
    		try {
    			Class.forName(DRIVERNAME);
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		}
    	}
        //获取数据库连接
    	public static Connection getConnection() {
    	          try {
    		return DriverManager.getConnection(URL,USER,PASSWORD);
    	           } catch (SQLException e) {	
    		e.printStackTrace();
    	           }
    			return null;
    	}
    	//查询
    	public static ResultSet query(String sql) {
    		System.out.println(sql);
    		//获取连接
    		Connection connection=getConnection();
    		PreparedStatement psd;
    		try {
    			psd = connection.prepareStatement(sql);
    			return psd.executeQuery();
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    		return null;
    	}
    	//增、删、改、查
    		public static int updataInfo(String sql) {
    			System.out.println(sql);
    			//获取连接
    			Connection connection=getConnection();
    			try {
    				PreparedStatement psd=connection.prepareStatement(sql);
    				return psd.executeUpdate();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    			return 0;
    		}
    	//关闭连接
    	public  static  void colse(ResultSet rs,Statement stmt,Connection  conn) throws Exception{
    	          try { if (rs != null){ rs.close(); }
                             	 if (stmt != null) { stmt.cancel(); }
    		 if (conn != null) { conn.close(); }
    	   } catch (Exception e) {
    		   e.printStackTrace(); throw new Exception();
    	   }
    	}
    }	

    com.test.entity >>> Goods

    package com.test.entity;
    
    public class Goods {
    	private int goodsID;//商品ID
    	private String name;//商品名称
    	private String typeName;//商品类别
    	private int stock;//库存
    
    	public Goods(int goodsID, String name, String typeName, int stock) {
    		super();
    		this.goodsID = goodsID;
    		this.name = name;
    		this.typeName = typeName;
    		this.stock = stock;
    	}
    
    	public Goods() {
    		super();
    	}
    
    	public int getGoodsID() {
    		return goodsID;
    	}
    
    	public void setGoodsID(int goodsID) {
    		this.goodsID = goodsID;
    	}
    
    	public String getName() {
    		return name;
    	}
    
    	public void setName(String name) {
    		this.name = name;
    	}
    
    	public String getTypeName() {
    		return typeName;
    	}
    
    	public void setTypeName(String typeName) {
    		this.typeName = typeName;
    	}
    
    	public int getStock() {
    		return stock;
    	}
    
    	public void setStock(int stock) {
    		this.stock = stock;
    	}
    	
    }
    

    com.test.controller >>> Updata

    package com.test.controller;
    
    import com.test.db.DbConnection;
    
    public class Updata {
    	//添加数据
    	public static int addData(String sql) {
    		
    		return DbConnection.updataInfo(sql);
    	}
    }
    

    com.test.controller >>> Select

    package com.test.controller;
    
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.ArrayList;
    
    import com.test.db.DbConnection;
    import com.test.entity.Goods;
    
    public class Select {
    	public static Object[][] getGoods() {
    		String sql = "SELECT * FROM tgoods";
    		
    		ResultSet resultSet = DbConnection.query(sql);
    		ArrayList<Goods> list=new ArrayList<Goods>();
    		try {
    			while (resultSet.next()) {
    				Goods goods=new Goods();
    				goods.setGoodsID(resultSet.getInt(1));
    				goods.setName(resultSet.getString(2));
    				goods.setTypeName(resultSet.getString(3));
    				goods.setStock(resultSet.getInt(4));
    				list.add(goods);
    			}
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    		Object[][] objects=new Object[list.size()][4];
    		for(int i=0;i<list.size();i++) {
    			objects[i][0]=list.get(i).getGoodsID();
    			objects[i][1]=list.get(i).getName();
    			objects[i][2]=list.get(i).getTypeName();
    			objects[i][3]=list.get(i).getStock();
    		}
    		return objects;
    	}
    	
    }
    

    com.test.View >>> IndexGUI

    package com.test.view;
    
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JOptionPane;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.table.DefaultTableModel;
    
    import com.test.controller.Select;
    import com.test.controller.Updata;
    import com.test.entity.Goods;
    
    public class IndexGUI extends JFrame {
    	
    	Object[] columnNames = {"商品编号","名称","类别名称","库存"};
    	Object[][] data = Select.getGoods();
    	DefaultTableModel df = new DefaultTableModel(data, columnNames);
    	
    	public IndexGUI() {
    		super("商品信息管理");
    		this.setBounds(0, 0, 780, 500);
    		this.setLocationRelativeTo(null);//让窗口在屏幕中间显示
    		this.setResizable(false);//让窗口大小不可改变
    		this.setLayout(null);
    		
    		JTable jTable=new JTable(df);
    		JScrollPane jp = new JScrollPane(jTable);
    		jp.setBounds(0, 10, 780, 350);
    		this.add(jp);
    		
    		JButton tj = new JButton("添加");
    		tj.setBounds(50, 400, 100, 30);
    		tj.addActionListener(new ActionListener() {
    			@Override
    			public void actionPerformed(ActionEvent e) {
    				IncreaseGUL i = new IncreaseGUL();
    				i.setVisible(true);
    			}
    		});
    		
    		JButton sc = new JButton("删除");
    		sc.setBounds(180, 400, 100, 30);
    		sc.addActionListener(new ActionListener() {
    			@Override
    			public void actionPerformed(ActionEvent e) {
    				if (jTable.getSelectedColumn()<0) {
    					JOptionPane.showMessageDialog(null, "请选中要删除的数据!");
    				} else {
    					int goodsID = Integer.parseInt(jTable.getValueAt(jTable.getSelectedRow(), 0).toString());
    					String sql="delete from tgoods where goodsid="+goodsID;
    					Updata updata = new Updata();
    					int result = updata.addData(sql);
    					if (result>0) {
    						JOptionPane.showMessageDialog(null, "删除成功!");
    						JOptionPane.showMessageDialog(null, "记得刷新一下哦!");
    					} else {
    						JOptionPane.showMessageDialog(null, "删除失败!");
    					}
    				}
    			}
    		});
    		
    		JButton xg = new JButton("修改");
    		xg.setBounds(310, 400, 100, 30);
    		xg.addActionListener(new ActionListener() {
    			@Override
    			public void actionPerformed(ActionEvent e) {
    				if (jTable.getSelectedColumn()<0) {
    					JOptionPane.showMessageDialog(null, "请选择要修改的数据!");
    				} else {
    					int goodsID = Integer.parseInt(jTable.getValueAt(jTable.getSelectedRow(), 0).toString());
    					String name = jTable.getValueAt(jTable.getSelectedRow(), 1).toString();
    					String typeName = jTable.getValueAt(jTable.getSelectedRow(), 2).toString();
    					int stock = Integer.parseInt(jTable.getValueAt(jTable.getSelectedRow(), 3).toString());
    					Goods goods = new Goods(goodsID,name,typeName,stock);
    					ModifyGUI modifyGUI = new ModifyGUI(goods);
    					modifyGUI.setVisible(true);
    				}
    				
    			}
    		});
    		
    		JButton sx = new JButton("刷新");
    		sx.setBounds(440, 400, 100, 30);
    		sx.addActionListener(new ActionListener() {
    			@Override
    			public void actionPerformed(ActionEvent e) {
    				Object[][] data = Select.getGoods();
    				df.setDataVector(data, columnNames);
    			}
    		});
    		
    		this.add(tj);
    		this.add(sc);
    		this.add(xg);
    		this.add(sx);
    	}
    	
    }
    

    com.test.View >>> IncreaseGUL

    package com.test.view;
    
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JOptionPane;
    import javax.swing.JTextField;
    
    import com.test.controller.Updata;
    
    public class IncreaseGUL extends JFrame implements ActionListener {
    	JTextField name = new JTextField();
    	JTextField type = new JTextField();
    	JTextField num = new JTextField();
    	public IncreaseGUL() {
    		super.setTitle("添加商品");
    		this.setBounds(0, 0, 780, 250);
    		this.setLocationRelativeTo(null);
    		this.setResizable(false);
    		this.setLayout(null);
    		
    		JLabel nameT = new JLabel("名称");
    		nameT.setBounds(50, 30, 40, 25);
    		name.setBounds(100, 30, 145, 30);
    		
    		JLabel typeT = new JLabel("类别");
    		typeT.setBounds(280, 30, 40, 25);
    		type.setBounds(335, 30, 145, 30);
    		
    		JLabel numT = new JLabel("数量");
    		numT.setBounds(515, 30, 40, 25);
    		num.setBounds(575, 30, 145, 30);
    		
    		JButton tj = new JButton("添加");
    		tj.setBounds(100, 115, 100, 30);
    		tj.addActionListener(this);
    		
    		this.add(nameT);
    		this.add(name);
    		this.add(typeT);
    		this.add(type);
    		this.add(numT);
    		this.add(num);
    		this.add(tj);
    	}
    
    	@Override
    	public void actionPerformed(ActionEvent e) {
    		String sql = null;
    		String addName = name.getText();
    		String addType = type.getText();
    		String addNum = num.getText();
    		if (addName.equals("")||addType.equals("")||addNum.equals("")) {
    			JOptionPane.showMessageDialog(null, "请完整输入要添加的数据");
    		} else {
    			sql="INSERT INTO tgoods VALUES("+"null,'"+addName+"','"+addType+"','"+addNum+"')";
    			int result = Updata.addData(sql);
    			if (result>0) {
    				JOptionPane.showMessageDialog(null, "添加成功!");
                    JOptionPane.showMessageDialog(null, "记得刷新一下哦!");
    				dispose();
    				IndexGUI i = new IndexGUI();
    			} else {
    				JOptionPane.showMessageDialog(null, "添加失败!");
    			}
    		}
    	}
    }
    

    com.test.View >>> ModifyGUI

    package com.test.view;
    
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JOptionPane;
    import javax.swing.JTextField;
    import com.test.controller.Updata;
    import com.test.entity.Goods;
    
    public class ModifyGUI extends JFrame implements ActionListener {
    	
    	JTextField name = new JTextField();
    	JTextField type = new JTextField();
    	JTextField num = new JTextField();
    	int id;
    	public ModifyGUI(Goods goods) {
    		super.setTitle("修改商品");
    		this.setBounds(0, 0, 780, 250);
    		this.setLocationRelativeTo(null);
    		this.setLayout(null);
    		
    		JLabel nameT = new JLabel("名称");
    		nameT.setBounds(50, 30, 40, 25);
    		name.setBounds(100, 30, 145, 30);
    		
    		JLabel typeT = new JLabel("类别");
    		typeT.setBounds(280, 30, 40, 25);
    		type.setBounds(335, 30, 145, 30);
    		
    		JLabel numT = new JLabel("库存");
    		numT.setBounds(515, 30, 40, 25);
    		num.setBounds(575, 30, 145, 30);
    		
    		JButton xg = new JButton("修改");
    		xg.setBounds(100, 115, 100, 30);
    		xg.addActionListener(this);
    		
    		this.add(nameT);
    		this.add(name);
    		this.add(typeT);
    		this.add(type);
    		this.add(numT);
    		this.add(num);
    		this.add(xg);
    		
    		name.setText(goods.getName());
    		type.setText(goods.getTypeName());
    		num.setText(Integer.toString(goods.getStock()));
    		id = goods.getGoodsID();
    	}
    	
    	@Override
    	public void actionPerformed(ActionEvent e) {
    		String sql = null;
    		String addName = name.getText();
    		String addType = type.getText();
    		int addNum = Integer.parseInt(num.getText());
    		if (addName.equals("")||addType.equals("")||addNum==0) {
    			JOptionPane.showMessageDialog(null, "请完整输入要修改的数据");
    		}else {
    			Updata up=new Updata();
    			
    			sql="UPDATE tgoods SET "+"name='"+addName+"',typeName='"+addType+"',stock='"+addNum+"'where goodsid="+id;
    			int result = Updata.addData(sql);
    			Updata.addData(sql);
    			if (result>0) {
    				JOptionPane.showMessageDialog(null, "修改成功!");
                    JOptionPane.showMessageDialog(null, "记得刷新一下哦!");
    				dispose();
    				IndexGUI i = new IndexGUI();
    				i.setVisible(true);
    			} else {
    				JOptionPane.showMessageDialog(null, "修改失败!");
    			}
    		}
    	}
    }
    

    com.test.Test >>> Test

    package com.test.Test;
    
    import com.test.view.IndexGUI;
    
    public class Test {
    	public static void main(String[] args) {
    		IndexGUI i = new IndexGUI();
    		i.setVisible(true);
    	}
    }
    

    展开全文
  • 商品列表显示业务逻辑分析 分页的的封装思路 分页的处理 商品列表显示业务逻辑分析 核心逻辑 /* * 显示商品list逻辑: * 第一步:获取请求页码。如果第一次请求,默认页码是1。 * 第二步:根据页码获取相应商品...
  • 主要为大家详细介绍了java实现商品信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 之前接触到一个无限分类,这次用到了,就自己写了一下,贴出来供参考。...至此 ,商品的无限分类 以及前端显示 以及告一段落,待续添加分类 以及逻辑判断,核心代码以及思路会贴上。转载请声明,谢谢。
  • Java语言编写的简单商品信息管理系统,带登陆密码,在控制台显示运行结果,无数据库,代码实现和功能都非常基础。附赠课程设计报告内容。 1.1课程设计目的本次课程设计旨在加深对本学期课程所学知识的理解,复习和...
  • Java商品信息查询

    千次阅读 2019-07-05 23:06:55
    综合一维数组和二维数组的相关知识,以及数组排序的多种算法来实现商品信息查询的功能。 假设在仓库系统中,每件商品都有 3 个库存信息,分别是入库量、出库量和当前库存量。定义一个一维数组来存储 5 件商品的名称...
  • 商品管理系统——Java实现

    万次阅读 多人点赞 2019-02-28 20:54:20
    功能要求: 完成“小商品管理系统”的架构设计 ... 显示商品信息 3. 商品入库(增加数量) 4. 商品出库(减少数量) 5. 修改商品价格 6. 所有产品的总价格(单价*数量) import java.util.ArrayList; impo...
  • 该资源属于jsp页面,用户可以通过该页面用 modelAndView.addObject("itemList",list);进行传值,传入数据,方便开发。
  • System.out.print("*********欢迎进入商品批发城*********"); System.out.print("\n\t编号\t商品\t价格\n"); for (int i = 0; i ; i++) { System.out.print("\t" + (i + 1)); System.out.print("\t" + ...
  • java数据库查询显示结果显示在JTable

    万次阅读 2016-03-15 12:21:14
    Connection conn = getConn("mysql"); PreparedStatement prest = conn.prepareStatement(sql); prest.setString(1, textField.getText().toString()); prest.setString(2, textField.getText().toSt
  • 管理员和普通用户的注册和登录;对管理员和普通用户的管理,包括查询、删除、添加管理员;对商品信息的浏览、添加和修改;对仓库信息的浏览、添加和修改等。
  • import java.util.Scanner; public class Goods { boolean con = true; double money; String[] goods = new String[] { "电风扇", "洗衣机", "电视机", "冰箱", "空调" }; double[] price = new double[] { ...
  • Java模拟商品录入查询

    千次阅读 2019-04-13 13:45:30
    Java模拟商品录入查询 import java.util.Scanner; public class Test1 { //用static全局都可查询 static String[] names={"iphone","华为","小米","VIVO"}; //单价 static double[] price={7200,5999,3599,4399}...
  • 二、Java Swing: com.ynavc.Bean com.ynavc.Controller com.ynavc.Dao com.ynavc.Test com.ynavc.Vive 文档说明: 一、语言和环境 A、实现语言 Java(SWING+JDBC),MySql B、开发环境 MyEclipse 9.0及...
  • 商店商品管理系统 JAVA写的 有界面 商品管理 需要自己设计数据库 很简单
  • 实战Java商品库存管理系统

    千次阅读 2019-06-22 21:42:29
    上周老师要求我们做个作业,那么我们就做一个Java企业商品进销存管理系统 源码+实训报告+系统测试报告已经打包好,方便给需要的同学使用! 链接:https://pan.baidu.com/s/14SaUQeWkt7uEa_yOBdVs0w 提取码:lwmb ...
  • JAVA课程设计 ,实现网上商品信息查询,客户端通过servlet实现对数据库信息的查询显示
  • 网上商品信息处理 java 程序 实现 网上商品信息处理 客户端通过servlet实现对数据库信息的操作,包括查询显示 (翻页),删除,增加记录,等。 通过该设计,进一步掌握servlet和数据库操作的知识
  • 一、新建商品数据库 CREATE TABLE `product` ( `pid` varchar(50) NOT NULL, `pname` varchar(50) DEFAULT NULL, `market_price` double DEFAULT NULL, `shop_price` double DEFAULT NULL, `pimage` varchar...
  • 列表ListView显示购物车的商品

    千次阅读 2017-04-24 09:40:20
    案例:开发一个购物车,需要将购物车中的商品列表的形式显示,并且还要对购物车中的商品进行增,删,改,查操作,利用ListView和SQLite数据库。 1,创建程序 首先创建一个名为“商品展示”的应用程序,设计用户...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,048
精华内容 19,619
关键字:

java商品列表显示

java 订阅