第七篇 基于JSP 技术的网上购书系统——新品上架、推荐产品、在线留言、搜索功能实现(网上商城、仿淘宝、当当、亚马逊)
目录
1.新品上架
1.1功能说明
1.2界面设计
1.3处理流程
1.4数据来源和算法
1.4.1数据来源
1.4.2查询条件
1.4.3表间关系
1.4.4相关sql实例
2.推荐产品
2.1功能说明
2.2界面设计
2.3处理流程
2.4数据来源和算法
2.4.1数据来源
2.4.2查询条件
2.4.3表间关系
2.4.4相关sql实例
3.在线留言
3.1功能说明
3.2界面设计
3.3处理流程
3.4数据来源和算法
3.4.1数据来源
3.4.2查询条件
3.4.3相关sql实例
4.查找结果 (搜索)
4.1功能说明
4.2界面设计
4.3处理流程
4.4 数据来源和算法
4.4.1数据来源
4.4.2查询条件
4.4.3表间关系
4.4.4相关sql实例
1.新品上架
1.1功能说明
显示最近一个月上架的所有图书,方便用户查找最新的图书。
1.2界面设计
1.3处理流程
1. 点击【查看】或图书名称链接进入【商品信息查看】页面。
2. 点击【购买】进入【我的购物车】页面。
1.4数据来源和算法
1.4.1数据来源
数据来源于“产品表(tb_ productinfo)”和“产品货架表(tb_sellinfo)”。
1.4.2查询条件
序号
查询条件名称
操作运算
表名
字段名
备注
1
状态、库存量、时间
等于(=)、大于(>)、大于等于(>=)和小于等于(<=)
tb_sellinfo
state、stock、time
获得销售信息
2
产品编号
等于(=)
tb_productinfo
productnumber
获得产品信息
1.4.3表间关系
“产品表(tb_ productinfo)”和“产品货架表(tb_sellinfo)”通过字段“产品编码(productnumber)”关联。
1.4.4相关sql实例
(1). select * from tb_sellinfo where state='上架' and stock>0 and time between dateadd(mm,-1,getdate()) and getdate() order by time desc
(2). select * from tb_productinfo where productnumber=?
2.推荐产品
2.1功能说明
向用户推荐一些反映良好、阅读量多的图书,给用户最好的阅读体验。
2.2界面设计
2.3处理流程
1. 点击【查看】或图书名称链接进入【商品信息查看】页面。
2. 点击【购买】进入【我的购物车】页面。
2.4数据来源和算法
2.4.1数据来源
数据来源于“产品表(tb_ productinfo)”和“产品货架表(tb_sellinfo)”。
2.4.2查询条件
序号
查询条件名称
操作运算
表名
字段名
备注
1
状态、库存量、推荐
等于(=)、大于(>)
tb_sellinfo
state、stock、groom
获得销售信息
2
产品编号
等于(=)
tb_productinfo
productnumber
获得产品信息
2.4.3表间关系
“产品表(tb_ productinfo)”和“产品货架表(tb_sellinfo)”通过字段“产品编码(productnumber)”关联。
2.4.4相关sql实例
(1). select * from tb_sellinfo where groom='yes' and stock>0 and state='上架'
(2). select * from tb_productinfo where productnumber=?
3.在线留言
3.1功能说明
提供一个交流平台,用户可以向卖家提供建议,也可以互相发表体会心得。
3.2界面设计
3.3处理流程
点击【发表】将内容保存到数据库,返回原页面显示留言内容。
3.4数据来源和算法
3.4.1数据来源
用户留言内容列表数据来源于“留言表(tb_guest)”。
3.4.2查询条件
序号
查询条件名称
操作运算
表名
字段名
备注
1
评论类型、状态
等于(=)
tb_guest
Commenttype、state
3.4.3相关sql实例
select * from tb_guest where commenttype='在线留言' and state='显示' order by time desc
4.查找结果 (搜索)
4.1功能说明
显示用户搜索的结果。
4.2界面设计
4.3处理流程
1. 点击【查看】或图书名称链接进入【商品信息查看】页面。
2. 点击【购买】进入【我的购物车】页面。
4.4 数据来源和算法
4.4.1数据来源
数据来源于“产品表(tb_ productinfo)”和“产品货架表(tb_sellinfo)”。
4.4.2查询条件
序号
查询条件名称
操作运算
表名
字段名
备注
1
状态、库存量、类别
等于(=)、大于(>)
tb_sellinfo
state、stock、sort
根据类别查询
2
产品编号
等于(=)
tb_productinfo
productnumber
获得产品信息
3
产品名称
等于(=)
tb_productinfo
bookname
4
产品编号
等于(=)、大于(>)
tb_sellinfo
productnumber
获得销售信息
4.4.3表间关系
“产品表(tb_ productinfo)”和“产品货架表(tb_sellinfo)”通过字段“productnumber”进行关联。
4.4.4相关sql实例
(1). select * from tb_sellinfo where state='上架' and stock>0 and sort=? order by time desc
(2). select * from tb_productinfo where productnumber=?
(3). select * from tb_productinfo where bookname like ?
(4). select * from tb_sellinfo where productnumber=? and stock>0
相关文章:

第七篇 基于JSP 技术的网上购书系统——新品上架、推荐产品、在线留言、搜索功能实现(网上商城、仿淘宝、当当、亚马逊)
目录 1.新品上架 1.1功能说明 1.2界面设计 1.3处理流程 1.4数据来源和算法 1.4.1数据来源 1.4.2查询条件 1.4.3表间关系 1.4.4相关sql实例 2.推荐产品 2.1功能说明 2.2界面设计 2.3处理流程 2.4数据来源和算法 2.4.1数据来源 2.4.2查询条件 2.4.3表间关…...

IntelliJ IDE 插件开发 |(一)快速入门
前言 IntelliJ IDEA 作为 Java 开发的首选 IDE,其强大、方便之处不必多说。不过,由于个人或者团队的个性化需求,我们或多或少会想对其功能进行拓展,这时就需要开发插件(在 IntelliJ 平台下的所有 IDE 均可运行&#x…...

【Ubuntu】Windows远程Ubuntu系统
步骤 开启ssh服务并开放22端口关闭防火墙ufw或iptables ;或者将远程端口添加到入站与出站规则安装xrdp并将xrdp用户添加到ssl-cert用户组mstsc 远程,输入账号密码 1、开启ssh服务 1.1. 查看ssh是否已经开启 sudo ps -e | grep ssh如果最后返回是sshd…...

pipeline jenkins流水线
Pipeline 是 Jenkins 中一种灵活且强大的工作流机制,它允许您以代码的形式来定义和管理持续集成和持续交付的流程。 Pipeline 的作用主要体现在以下几个方面: 可编排的构建流程:使用 Pipeline,您可以将一个或多个阶段(…...

软件工程理论与实践 (吕云翔) 第六章 面向对象分析课后习题及其解析
第六章 面向对象分析 知识点: 一个典型的软件系统通常包括的内容为:它使用数据结构(对象模型),执行操作(动态模型),并且完成数据值的变化(功能模型)。 3种模型之间的关…...

langchain(1):使用LangChain 调用 openai 的 text/chat model
文章目录 重要参考OPENAI API调用 Text 模型调用 Chat 模型消息角色 Chat 模型 vs Text 模型 通过 LangChain 调用 Text 和 Chat 模型调用 text 模型调用 chat 模型 重要参考 langchain 中文网 langchain api openai api 文档 huggingface LangChain 是一个全方位的、基于大…...

rabbitMQ的扇出模式(fanout发布订阅)的生产者与消费者使用案例
扇出模式 fanout 发布订阅模式 生产者 生产者发送消息到交换机(logs),控制台输入消息作为生产者的消息发送 package com.esint.rabbitmq.work03;import com.esint.rabbitmq.RabbitMQUtils; import com.rabbitmq.client.Channel;import java.util.Scanne…...
VSCode打开Json 文件格式化
在VSCode中打开JSON文件时,你可以使用以下步骤来格式化JSON并显示为多行: 使用快捷键: 在打开的JSON文件中,使用快捷键格式化文档。 Windows/Linux:Shift Alt FmacOS:Shift Option F 右键菜单ÿ…...

【C++】:STL——标准模板库介绍 || string类
📚1.什么是STL STL(standard template libaray-标准模板库):是C标准库的重要组成部分,不仅是一个可复用的组件库,而且 是一个包罗数据结构与算法的软件框架 📚2.STL的版本 原始版本 Alexander Stepanov、Meng Lee 在…...

Python小白之PyCharm仍然显示“No module named ‘xlwings‘”
Python小白之“没有名称为xlwings‘的模块”-CSDN博客文章浏览阅读8次。cmd 打开命令行,输入python出现>>>的提示格,输入import xlwings 回车,正常报错:No module named xlwings。输入python 回车后,再输入im…...
在Uni-app中实现计时器效果
本文将介绍如何在Uni-app中使用Vue.js的计时器功能实现一个简单的计时器效果。 首先,我们需要创建一个包含计时器的组件。以下是一个基本的计时器组件示例: <template><div class"timer"><p>{{ formatTime }}</p><…...

Linux脚本shell中将Windos格式字符转换为unix
众所周知,windos的文档直接复制到linux服务器上去,是需要进行格式转换的,否则可能出现以下报错: 解决方法: vim 脚本 输入 :set ff ##会显示字符格式 :set ffunix ##转换为unix格式 :wq ##保存退出...
【分布式】MIT 6.824 Lab 2B实现细节分析
基于6.824 2020版 http://nil.csail.mit.edu/6.824/2020/schedule.html Lab 2A(选举)一天就完成了,主要是第一次开始写Raft需要稍微熟悉一下,但是几乎不用修改,很容易就通过了。不过到了Lab 2B就会发现2A能够通过纯属侥…...

MySql 数据库初始化,创建用户,创建数据库,授权
登录MySQL(使用管理员账户) mysql -u root -p 设置用户 -- 创建用户并设置密码 CREATE USER user_name% IDENTIFIED BY user_password;-- 删除用户 drop user user_name; 设置数据库 -- 创建数据库 CREATE DATABASE database_name;-- 删除数据库 DR…...

【洛谷算法题】P5712-Apples【入门2分支结构】
👨💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5712-Apples【入门2分支结构】🌏题目描述🌏输入格式&…...
vue项目中的js文件使用vuex
使用场景:假设有一个接口,需要在很多页面获取一遍并且将接口的返回值保存起来,这样就能使用vuex,将值保存在vuex中 实现:vuex中新建firmModule.js文件,编写存储值的代码,utils/getFirmData.js用…...
【Vue3】 computed 完整写法 全选反选 、计算商品总价
全选反选 const allCheck computed({get() {return buyCard.value.every(item > item.checkState)},set(val) {return buyCard.value.forEach(item > item.checkState val);},}); 计算商品总价格 const aggregatePrice computed(() > {const arr buyCard.value.f…...

Mindomo Desktop for Mac(免费思维导图软件)下载
Mindomo Desktop for Mac是一款免费的思维导图软件,适用于Mac电脑用户。它可以帮助你轻松创建、编辑和共享思维导图,让你的思维更加清晰、有条理。 首先,Mindomo Desktop for Mac具有直观易用的界面。它采用了Mac独特的用户界面设计…...
Spark资源规划-资源上线评估
1、总体原则 以单台服务器 128G 内存,32 线程为例。 先设定单个 Executor 核数,根据 Yarn 配置得出每个节点最多的 Executor 数量,每个节点的 yarn 内存/每个节点数量单个节点的数量 总的 executor 数单节点数量*节点数。 2、具体提交参数 …...

RT-Thread STM32F407 定时器
定时器简介 硬件定时器一般有 2 种工作模式,定时器模式和计数器模式。不管是工作在哪一种模式,实质都是通过内部计数器模块对脉冲信号进行计数。下面是定时器的一些重要概念。 计数器模式:对外部输入引脚的外部脉冲信号计数。 定时器模式&…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...

C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
rknn优化教程(二)
文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
离线语音识别方案分析
随着人工智能技术的不断发展,语音识别技术也得到了广泛的应用,从智能家居到车载系统,语音识别正在改变我们与设备的交互方式。尤其是离线语音识别,由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力,广…...