返回顶部
首页 > 资讯 > 精选 >Java网上书店管理系统如何实现
  • 491
分享到

Java网上书店管理系统如何实现

2023-07-02 00:07:18 491人浏览 八月长安
摘要

今天小编给大家分享一下Java网上书店管理系统如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.效果展示2.需求功能

今天小编给大家分享一下Java网上书店管理系统如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    1.效果展示

    Java网上书店管理系统如何实现

    Java网上书店管理系统如何实现

    2.需求功能

    用户可以进行注册登陆系统,在用户的界面上,其可以进行查看网上书店里的图书类别和所在类别下的图书,根据自己的需求可在订单项目里添加订单购买自己喜欢的图书;

    管理员可以通过自己的账号登录到管理员系统对书店进行管理,其可实现对图书的添加,修改,查询,和删除功能,可以查看用户的订单,修改和维护订单。添家客户的信息用以统计数据。

    在构造系统时,首先从需求出发构造数据库,然后再由数据库表结合需求划分系统功能模块。这样,就把一个大的系统解成了几个小系统。这里把系统划分为了三个模块:用户登录模块,管理员模块,用户购买模块。模块分别能够实现以下功能:

    • 登录模块:实现登录,注册功能。

    • 管理员模块:实现对图书的添加修改和删除以及对订单的添加修改和删除功能。

    • 用户购买模块:实现对图书的查找以及对所需图书的下单功能。

    3.系统总体设计及部分代码

    Java网上书店管理系统如何实现

    3.1登录模块设计

    用户正确输入用户名和密码,连接到数据库,登录成功!

    private void loginActionPerfORMed(ActionEvent evt) {     String userName=this.userNameTxt.getText(); String passWord=new String(this.passwordTxt.getPassword()); if(StringUtil.isEmpty(userName)){ JOptionPane.showMessageDialog(null, "用户名不能为空!"); return; } if(StringUtil.isEmpty(password)){ JOptionPane.showMessageDialog(null, "密码不能为空!"); return; } CUser cuser=new CUser(userName,password); Connection con=null; try { con=dbUtil.getCon(); CUser currentCUser =cuserDao.login(con,cuser); if(currentCUser!=null){dispose();new CMainFrm().setVisible(true);}else{JOptionPane.showMessageDialog(null, "用户名或者密码错误!");} } catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}

    3.2新用户的注册

    此模块的核心是创建实例化对象。

    private void reGIStrationActionPerformed(ActionEvent evt) {String userName=this.userNameTxt.getText();String password=this.passwordTxt.getText();if(StringUtil.isEmpty(userName)){JOptionPane.showMessageDialog(null, "用户名不能为空!");return;}if(StringUtil.isEmpty(password)){JOptionPane.showMessageDialog(null, "密码不能为空!");return;}Registration registration= new Registration(userName,password);Connection con= null;try {con=dbUtil.getCon();int n= registrationDao.add(con, registration);if(n==1){JOptionPane.showMessageDialog(null, "注册成功!");resetValue();}else{JOptionPane.showMessageDialog(null, "注册失败!");}}catch(Exception e) {}finally {try {dbUtil.closeCon(con);} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();JOptionPane.showMessageDialog(null, "注册失败!");}}}

    3.3图书添加模块

    管理员在此界面上可对系统里的图书进行查询修改和删除。

    public static void main(String[] args) {        EventQueue.invokeLater(new Runnable() {            public void run() {                try {                    BookAddInterFrm frame = new BookAddInterFrm();                    frame.setVisible(true);                } catch (Exception e) {                    e.printStackTrace();                }            }        });    }

    3.4图书添加事件

    此界面主要实现图书的添加功能。

    private void bookAddActionPerformed(ActionEvent evt) {String bookName=this.bookNameTxt.getText();String author=this.authorTxt.getText();String price=this.priceTxt.getText();String bookDesc=this.bookDescTxt.getText();if(StringUtil.isEmpty(bookName)){JOptionPane.showMessageDialog(null, "图书名称不能为空!");return;}if(StringUtil.isEmpty(author)){JOptionPane.showMessageDialog(null, "图书作者不能为空!");return;}if(StringUtil.isEmpty(price)){JOptionPane.showMessageDialog(null, "图书价格不能为空!");return;}String sex="";if(manJrb.isSelected()){sex="男";}else if(femaleJrb.isSelected()){sex="女";}BookType bookType=(BookType) bookTypeJcb.getSelectedItem();int bookTypeId=bookType.getId();Book book=new Book(bookName,author, sex, Float.parseFloat(price) , bookTypeId,  bookDesc);Connection con=null;try{con=dbUtil.getCon();int addNum=bookDao.add(con, book);if(addNum==1){JOptionPane.showMessageDialog(null, "图书添加成功!");resetValue();}else{JOptionPane.showMessageDialog(null, "图书添加失败!");}}catch(Exception e){e.printStackTrace();JOptionPane.showMessageDialog(null, "图书添加失败!");}finally{try {dbUtil.closeCon(con);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}private void resetValue(){this.bookNameTxt.setText("");this.authorTxt.setText("");this.priceTxt.setText("");this.manJrb.setSelected(true);this.bookDescTxt.setText("");if(this.bookTypeJcb.getItemCount()>0){this.bookTypeJcb.setSelectedIndex(0);}}private void fillBookType(){Connection con=null;BookType bookType=null;try{con=dbUtil.getCon();ResultSet rs=bookTypeDao.list(con, new BookType());while(rs.next()){bookType=new BookType();bookType.setId(rs.getInt("id"));bookType.setBookTypeName(rs.getString("bookTypeName"));this.bookTypeJcb.addItem(bookType);}}catch(Exception e){e.printStackTrace();}finally{}}}

    3.5买家信息维护

    此模块主要用于对买家信息的查找和维护。

    protected void consumerSerachActionPerformed(ActionEvent evt) {String s_consumerName= this.s_consumerNameTxt.getText();Consumer consumer=new Consumer();consumer.setConsumerName(s_consumerName);this.fillTable(consumer);}private void fillTable(Consumer consumer){DefaultTableModel dtm=(DefaultTableModel) consumerTable.getModel();dtm.setRowCount(0); // 设置成0行Connection con=null;try{con=dbUtil.getCon();ResultSet rs=consumerDao.list(con, consumer);while(rs.next()){Vector v=new Vector();v.add(rs.getString("id"));v.add(rs.getString("consumerName"));v.add(rs.getString("sex"));v.add(rs.getString("age"));v.add(rs.getString("number"));v.add(rs.getString("bookName"));dtm.addRow(v);}}catch(Exception e){e.printStackTrace();}finally {try {dbUtil.closeCon(con);} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}}private void consumerUpdateActionEvet(ActionEvent evt) {String id=idTxt.getText();String consumerName=consumerNameTxt.getText();String sex=sexTxt.getText();String age=ageTxt.getText();String number=numberTxt.getText();String bookName=bookNameTxt.getText();if(StringUtil.isEmpty(id)){JOptionPane.showMessageDialog(null, "请选择要修改的记录");return;}if(StringUtil.isEmpty(consumerName)){JOptionPane.showMessageDialog(null, "购书者名称不能为空");return;}if(StringUtil.isEmpty(age)){JOptionPane.showMessageDialog(null, "年龄不能为空");return;}if(StringUtil.isEmpty(number)){JOptionPane.showMessageDialog(null, "联系方式不能为空");return;}if(StringUtil.isEmpty(bookName)){JOptionPane.showMessageDialog(null, "图书名称不能为空");return;}if(StringUtil.isEmpty(sex)){JOptionPane.showMessageDialog(null, "性别不能为空");return;}Consumer consumer=new Consumer(Integer.parseInt(id),consumerName,sex,age,number,bookName);Connection con=null;try {con=dbUtil.getCon();con=dbUtil.getCon();int modifyNum=consumerDao.update(con, consumer);if(modifyNum==1){JOptionPane.showMessageDialog(null, "修改成功");this.resetValue();this.fillTable(new Consumer());}else{JOptionPane.showMessageDialog(null, "修改失败");}}catch(Exception e) {e.printStackTrace();JOptionPane.showMessageDialog(null, "修改失败");}finally {try {dbUtil.closeCon(con);} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}}

    3.6订单管理模块

    此模块用于图书订单管理,查找,修改,删除等功能的实现。

         protected void orderUpdateActionPerformed(ActionEvent evt) {String id=this.idTxt.getText();if(StringUtil.isEmpty(id)){JOptionPane.showMessageDialog(null, "请选择要修改的记录");return;}String addressee=this.addresseeTxt.getText();String number=this.numberTxt.getText();String deliveryMent=this.deliveryMentTxt.getText();String paymentMethod=this.paymentMethodTxt.getText();String shippingAddress=this.shippingAddressTxt.getText();if(StringUtil.isEmpty(addressee)){JOptionPane.showMessageDialog(null, "收件人不能为空!");return;}if(StringUtil.isEmpty(number)){JOptionPane.showMessageDialog(null, "购买数量不能为空!");return;}if(StringUtil.isEmpty(deliveryMent)){JOptionPane.showMessageDialog(null, "运送方式不能为空!");return;}if(StringUtil.isEmpty(paymentMethod)){JOptionPane.showMessageDialog(null, "支付方式不能为空!");return;}if(StringUtil.isEmpty(paymentMethod)){JOptionPane.showMessageDialog(null, "收件地址不能为空!");return;}Book book=(Book) this.bookNameJcb.getSelectedItem();int bookId=book.getId();Order order =new Order(Integer.parseInt(id), addressee, number, deliveryMent, paymentMethod, shippingAddress,bookId);Connection con =null;try {con=dbUtil.getCon();int addNum=orderDao.update(con, order);if(addNum==1) {JOptionPane.showMessageDialog(null, "订单修改成功!");resetValue();this.fillTable(new Order());}else {JOptionPane.showMessageDialog(null, "订单修改失败!");}}catch(Exception e) {e.printStackTrace();}finally {try {dbUtil.closeCon(con);} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();JOptionPane.showMessageDialog(null, "订单添加失败!");}}}

    4.数据库设计

    4.1系统数据库设计

    使用sql语句查询项目存储数据用到的数据库表格:

    Java网上书店管理系统如何实现

    1.管理员信息表

    列名数据类型长度主键非空自增
    IdInt11√√√
    usenamevarchar20   
    passwordvarchar20   

    2.图书类型信息表

    列名数据类型长度主键非空自增






    idInt11√√√
    BookTypeNameVarchar20   
    bookTypeDesVarchar20   

    3.图书信息表

    列名数据类型长度主键非空自增






    BooknameInt11√√√
    AuthorVarchar20   
    SexVarchar10   
    PriceFloat10   
    bookTypeIdInt11   
    bookDescVarchar1000   

    4.订单信息表

    列名数据类型长度主键非空自增






    BuyidInt11√√√
    NameVarchar20   
    SexVarchar20   
    BuybooknamtelVarchar20   
    WayVarchar20   
    AddressVarchar20   

    5.买家信息表

    列名数据类型长度主键非空自增






    IdInt11√√√
    ConsumernameVarchar50   
    SexVarchar50   
    AgeVarchar50   
    NumberVarchar50   
    BooknameVarchar50   

    4.2系统E-R图设计

    Java网上书店管理系统如何实现

    5.JDBC连接数据库

    Java网上书店管理系统如何实现

    一定要安装数据库jdbc驱动包!

    代码展示:

    package com.util;import java.sql.Connection;import java.sql.DriverManager;public class DbUtil {private String jdbcName="com.mysql.cj.jdbc.Driver";      // 驱动名称数据库连接地址   由于数据库为最新版本  导致驱动名称已改为com.Mysql.cj.jdbc.Driver//由于时区错乱  执行命令给mysql服务器设置时区为东八区    serverTimezone=GMT%2B8private String dbUrl="jdbc:mysql://localhost:3306/db_book?serverTimezone=GMT%2B8";// 数据库连接地址private String dbuserName = "root";                         // 用户名private String dbpassWord = "abc123";                         // 密码public Connection getCon()throws Exception{Class.forName(jdbcName);Connection con=DriverManager.getConnection(dbUrl, dbuserName, dbpassWord);return con;}public void closeCon(Connection con)throws Exception{if(con!=null){con.close();}}public static void main(String[] args) {DbUtil dbUtil=new DbUtil();try {dbUtil.getCon();System.out.println("数据库连接成功!");} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();System.out.println("数据库连接失败");}}}

    以上就是“Java网上书店管理系统如何实现”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

    --结束END--

    本文标题: Java网上书店管理系统如何实现

    本文链接: https://lsjlt.com/news/338694.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • Java网上书店管理系统如何实现
      今天小编给大家分享一下Java网上书店管理系统如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.效果展示2.需求功能...
      99+
      2023-07-02
    • Java实战之网上书店管理系统的实现
      目录1.效果展示2.需求功能3.系统总体设计及部分代码3.1登录模块设计3.2新用户的注册3.3图书添加模块3.4图书添加事件3.5买家信息维护3.6订单管理模块4.数据库设计4.1...
      99+
      2024-04-02
    • Java如何实现网上图书馆管理系统
      小编给大家分享一下Java如何实现网上图书馆管理系统,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、项目简述功能: 区分为管理员用户和普通用户,普通用户:用户登录,个 人信息修改,图书查询,用户借阅,用户归还,管理员用 ...
      99+
      2023-06-25
    • 网上购书(书店)管理系统设计与实现(PHP+Mysql)
      目 录 1 引言 1 1.1 开发背景 1 1.2 当前现状 2 1.3 课题研究的意义 2 2 程序技术相关知识 4 2.1 PHP简介 4 2.2 PHP 平台相关简介 4 2.3 PHP的...
      99+
      2023-09-02
      php MySQL 网上书店 书城 毕业设计
    • java如何实现图书管理系统
      小编给大家分享一下java如何实现图书管理系统,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、背景介绍通过一段时间java编程的学习,需要一个比较综合的实例来进...
      99+
      2023-06-14
    • java实现图书管理系统
      本文通过实例为大家分享了java实现图书管理系统的具体代码,供大家参考,具体内容如下 一、背景介绍 通过一段时间java编程的学习,需要一个比较综合的实例来进行编程的练习,是一个对前...
      99+
      2024-04-02
    • 如何使用Java实现图书管理系统
      本篇内容介绍了“如何使用Java实现图书管理系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一. 功能介绍1.1 使用介绍1.输入姓名2....
      99+
      2023-07-02
    • SSM网上书店管理系统毕业设计源码082255
      目  录 摘要 1 绪论 1.1 研究目的 1.2国内外研究现状 1.3论文结构与章节安排 2 网上书店管理系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据流程 3.3.2 业务...
      99+
      2023-09-07
      java php mysql vue.js idea
    • 如何用Java代码实现图书管理系统
      这篇文章主要介绍“如何用Java代码实现图书管理系统”,在日常操作中,相信很多人在如何用Java代码实现图书管理系统问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何用Java代码实现图书管理系统”的疑惑有所...
      99+
      2023-06-29
    • PHP基于thinkphp的网上书店管理系统#毕业设计
      本论文主要论述了如何使用php语言开发一个网上图书管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,面向对象编程思想进行项目开发。在引言中,将论述网上图书管理系统的当前背景以及系统开发的目的,...
      99+
      2023-10-22
      php 开发语言
    • C++如何实现图书管理系统
      本文小编为大家详细介绍“C++如何实现图书管理系统”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++如何实现图书管理系统”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。功能:首先是注册,登录,找回密码和修改密码...
      99+
      2023-06-29
    • C#如何实现图书管理系统
      本文小编为大家详细介绍“C#如何实现图书管理系统”,内容详细,步骤清晰,细节处理妥当,希望这篇“C#如何实现图书管理系统”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、设计目的通过模拟图书管理系统,实现以下功能...
      99+
      2023-06-29
    • Java实现简单酒店管理系统
      用Java编写一个简单的酒店管理系统,供大家参考,具体内容如下 为某个酒店编写程序:酒店管理系统,模拟订房、退房、打印所有房间状态等功能。 1、该系统的用户是:酒店前台。2、酒店使用...
      99+
      2024-04-02
    • Java代码实现酒店管理系统
      我们通过学习Java基础知识,让自己正式踏入学习Java语言的行列,这篇博客是用来让我们真正的了解并应用面向对象的思想来实现的。 使用简单的Java代码实现酒店管理系统,供大家参考,...
      99+
      2024-04-02
    • java实现简单图书管理系统
      本文实例为大家分享了java实现简单图书管理系统的具体代码,供大家参考,具体内容如下 JAVA练习的作业,题目如下: 设计一个图书管理系统类和用户类,要求具有以下功能: (1). 查...
      99+
      2024-04-02
    • Java怎么实现图书管理系统
      本篇内容主要讲解“Java怎么实现图书管理系统”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java怎么实现图书管理系统”吧!一、项目简述功能包括(管理员和学生角色): 管理员和学生登录,图书管...
      99+
      2023-06-21
    • JAVA实现图书管理系统项目
      目录前言项目需求设计前提设计目标设计结构图功能解读项目实现基本对象的设置通过IO流的写入写出总结前言 相信再每一个学生在学习编程的时候,应该都会写的一个小项目——图书管理系统。为什么...
      99+
      2024-04-02
    • 如何实现C++版图书管理系统
      这篇文章主要介绍了如何实现C++版图书管理系统,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下使用介绍图书管理系统源码由两部分组成,第一部分book.h头文件,第二...
      99+
      2023-06-29
    • python基于PHP+MySQL的网上书店网上图书销售系统
      不论是中小学生还是大学生亦或者是那些已经工作的成功人士在生活中都难免要购买一些图书来进行学习和充电,但是因为学习和工作的原因人们不愿再像传统的购书模式看齐,他们更多的是希望通过网络来购买到自己所需的图...
      99+
      2023-09-09
      php 数据库 开发语言
    • java实现简单的图书管理系统
      本文实例为大家分享了java实现简单的图书管理系统的具体代码,供大家参考,具体内容如下 一、项目分布 Book类: 定义了书的一些属性(书名,作者,价格,分类,状态)并且写了属性的...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作