基于javaweb的SpringBoot雪具商城系统设计与实现(源码+文档+部署讲解)
技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。
主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路。
🍅文末获取源码联系🍅
🍅文末获取源码联系🍅
🍅文末获取源码联系🍅
👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟
《课程设计专栏》
《Java专栏》
《Python专栏》
⛺️心若有所向往,何惧道阻且长
文章目录
- 一、运行环境要求
- 二、开发工具推荐
- 后端开发工具
- 前端开发工具
- 三、适用场景
- 四、功能说明
- 管理员角色
- 普通用户角色
- 五、环境搭建
- 六、技术栈
- 后端
- 前端
- 七、使用说明
- 项目运行
- 文档介绍
- 八、功能页面展示
- 九、部分代码展示
一、运行环境要求
本雪具商城系统对运行环境有着特定的要求,以确保系统能够稳定、高效地运行。在后端,Java 版本需≥8,它作为系统的核心运行基础,为整个项目提供了强大的功能支撑。数据库方面,MySQL≥5.7 是必要条件,用于存储商城系统的各类数据,包括用户信息、商品详情、订单记录等。在前端交互部分,Node.js≥14 不可或缺,其在前后端数据通信与前端页面动态渲染等方面发挥着关键作用。值得注意的是,若未曾学习过 Node.js,不建议尝试开展此前后端分离项目,以免在开发过程中遭遇诸多技术难题。
二、开发工具推荐
后端开发工具
后端开发可选用 eclipse、idea、myeclipse、sts 等工具,它们均能进行配置并运行本项目。其中,IDEA 以其强大的智能代码补全、高效的代码分析以及便捷的调试功能,在开发者中广受欢迎,是后端开发工具的优质之选。
前端开发工具
前端开发可在 WebStorm、VSCode、HBuilderX 等工具中选择。WebStorm 对前端技术的支持全面且深入,具备出色的代码导航与重构功能;VSCode 凭借其轻巧灵活、丰富插件生态的特点,深受开发者喜爱;HBuilderX 则在开发效率和对国产技术框架的支持上表现卓越。这些工具都能很好地满足本项目前端开发的需求。
三、适用场景
本雪具商城系统适用于多种场景。对于学生群体而言,是课程设计、大作业以及毕业设计的优质选择,能够帮助学生将所学知识应用于实际项目,提升实践能力。同时,也适合开发者用于项目练习,在实践中积累经验、提升技术水平,或是作为学习演示案例,助力初学者快速理解前后端分离项目的架构与开发流程。
四、功能说明
本系统基于 javaweb,采用 SpringBoot 框架,融合了 java、springboot、mybaits、vue、elementui、mysql 等技术。系统包含管理员和用户两种角色,前后台分离。
管理员角色
销售员管理:对商城销售人员信息进行统一管理,包括添加新销售员、编辑现有销售员信息以及删除冗余销售员数据,确保销售团队信息准确无误。
用户管理:实现对普通用户信息的全方位管控,可进行查询、新增、修改和删除操作,保障用户数据的完整性与准确性。
雪具分类管理:对雪具商品进行分类规划与管理,新增分类、调整分类名称及属性,使雪具分类更加科学合理,方便用户查找商品。
雪具商品管理:负责雪具商品的录入、编辑商品详情、下架商品等操作,保证商城雪具商品信息的及时更新与准确展示。
进货记录管理:详细记录雪具的进货情况,包括进货时间、数量、供应商等信息,便于库存管理与成本核算。
退货记录管理:处理用户的退货申请,记录退货原因、时间、商品信息等,维护良好的售后服务体系。
系统管理:对整个商城系统的基础设置、参数配置等进行管理,确保系统稳定运行。
普通用户角色
前台门户浏览:可在商城前台浏览雪具商品,查看商品列表、详情页,了解商品的款式、价格、性能等信息。
个人信息修改:用户能够自主修改个人信息,如姓名、联系方式、收货地址等,确保个人资料的准确性与及时性。
雪具商品购买:挑选心仪的雪具商品,加入购物车并完成下单购买流程,支持多种支付方式。
订单查询:随时查看自己的订单状态,包括订单是否已支付、发货、收货等信息,方便跟踪购物进度。
退货申请:若对购买的雪具商品不满意,可提交退货申请,填写退货原因,等待商家处理。
五、环境搭建
运行环境:推荐使用 java jdk 1.8,本系统在此环境下经过充分测试,运行稳定。理论上其他符合≥8 要求的 Java 版本也可尝试,但可能会因版本差异出现兼容性问题。
IDE 环境:IDEA、Eclipse、Myeclipse 均可用于项目开发。其中,IDEA 在代码智能提示、项目结构管理以及调试便利性方面表现突出,强烈推荐使用。
硬件环境:支持 windows 7/8/10 系统,内存要求 1G 以上;Mac OS 系统同样适用,能够为开发者提供良好的开发环境。
数据库:MySql 5.7/8.0 版本均可。需提前在本地安装并配置好 MySQL 数据库,为项目数据存储做好准备。
Maven 项目:本项目为 Maven 项目,Maven 能够方便地管理项目依赖,简化项目构建过程,提高开发效率。
六、技术栈
后端
采用 SpringBoot 框架,极大地简化了项目的搭建与开发过程,提高开发效率。结合 Mybaits 持久层框架,方便与数据库进行交互,实现数据的高效存取。
前端
基于 Vue.js 构建用户界面,其组件化开发模式使代码可维护性强。搭配 elementui 前端组件库,能够快速搭建美观、易用的界面,提升用户体验。
七、使用说明
项目运行
利用 Navicat 或其他数据库管理工具,在 mysql 中创建与项目 sql 文件同名的数据库,并导入项目提供的 sql 文件,完成数据库表结构与初始数据的创建。
使用 IDEA/Eclipse/MyEclipse 导入项目,导入成功后,在控制台执行 maven clean;maven install 命令,下载项目所需依赖包。
打开项目中的 application.yml 配置文件,将其中的数据库配置修改为自己本地的数据库配置,确保项目能够正确连接数据库。
启动项目,在浏览器地址栏输入以下地址:
前台地址:http://localhost:8080/springbootx9zss/front/dist/index.html,用户账号为 “用户账号 1”,密码为 “123456”。
后台地址:http://localhost:8080/springbootx9zss/admin/dist/index.html,管理员账号为 “admin”,密码为 “admin”。
文档介绍
登录展示页:介绍用户登录页面的布局、功能以及登录流程,包括如何输入账号密码、忘记密码的处理方式等。
首页展示:讲解商城首页的设计理念,展示首页轮播图、热门商品推荐、导航栏等元素的功能与交互效果。
商品展示页面:描述商品列表页的展示方式,如商品的排列规则、筛选功能、分页设置等。
商品详情介绍:详细说明商品详情页展示的商品信息,包括图片、参数、描述、用户评价等内容。
收货地址详情:介绍用户在添加、编辑收货地址时的操作流程与页面展示。
个人中心详情介绍:讲解个人中心页面的功能,如个人信息展示与修改、订单管理、收藏夹等。
用户管理展示:阐述管理员在用户管理页面进行用户信息查看、编辑、删除等操作的界面与流程。
雪具分类展示页面:介绍雪具分类页面的结构,如何进行分类的新增、编辑与删除操作。
雪具商品管理展示页面:说明管理员对雪具商品进行管理的页面功能,包括商品的添加、编辑、下架等操作。
八、功能页面展示
九、部分代码展示
<template><div><input v - model="searchQuery" placeholder="搜索分类"><button @click="searchCategories">查询</button><button @click="openCreateModal">新增</button><button @click="deleteSelectedCategories">删除</button><table><thead><tr><th><input type="checkbox" v - model="selectAll"></th><th>序号</th><th>雪具分类</th><th>操作</th></tr></thead><tbody><tr v - for="(category, index) in filteredCategories" :key="category.id"><td><input type="checkbox" v - model="selectedCategoryIds" :value="category.id"></td><td>{{ index + 1 }}</td><td>{{ category.categoryName }}</td><td><button @click="openDetailModal(category)">详情</button><button @click="openEditModal(category)">修改</button><button @click="deleteCategory(category.id)">删除</button></td></tr></tbody></table><!-- 新增模态框 --><el - dialog title="新增雪具分类" :visible.sync="createModalVisible"><el - form :model="newCategory"><el - form - item label="分类名称" prop="categoryName"><el - input v - model="newCategory.categoryName"></el - input></el - form - item></el - form><span slot="footer" class="dialog - footer"><el - button @click="createModalVisible = false">取 消</el - button><el - button type="primary" @click="createCategory">确 定</el - button> </span> </el - dialog> <!-- 详情模态框 --> <el - dialog title="雪具分类详情" :visible.sync="detailModalVisible"> <el - form :model="detailCategory"> <el - form - item label="分类名称" prop="categoryName"> <el - input v - model="detailCategory.categoryName" disabled></el - input> </el - form - item> </el - form> <span slot="footer" class="dialog - footer"> <el - button @click="detailModalVisible = false">关 闭</el - button> </span> </el - dialog> <!-- 编辑模态框 --> <el - dialog title="编辑雪具分类" :visible.sync="editModalVisible"> <el - form :model="editCategory"> <el - form - item label="分类名称" prop="categoryName"> <el - input v - model="editCategory.categoryName"></el - input> </el - form - item> </el - form> <span slot="footer" class="dialog - footer"> <el - button @click="editModalVisible = false">取 消</el - button> <el - button type="primary" @click="updateCategory">确 定</el - button> </span> </el - dialog> </div> </template> <script> import axios from 'axios';
export default {data() {return {categories: [],searchQuery: '',selectAll: false,selectedCategoryIds: [],createModalVisible: false,newCategory: {categoryName: ''},detailModalVisible: false,detailCategory: {categoryName: ''},editModalVisible: false,editCategory: {categoryName: ''}};},computed: {filteredCategories() {return this.categories.filter(category => {return category.categoryName.includes(this.searchQuery);});}},methods: {async fetchCategories() {try {const response = await axios.get('/api/categories');this.categories = response.data;} catch (error) {console.error(error);}},searchCategories() {this.fetchCategories();},openCreateModal() {this.createModalVisible = true;this.newCategory = {categoryName: ''};},async createCategory() {try {const response = await axios.post('/api/categories', this.newCategory);this.createModalVisible = false;this.fetchCategories();} catch (error) {console.error(error);}},openDetailModal(category) {this.detailCategory = {...category };this.detailModalVisible = true;},openEditModal(category) {this.editCategory = {...category };this.editModalVisible = true;},async updateCategory() {try {const response = await axios.put(`/api/categories/${this.editCategory.id}`, this.editCategory);this.editModalVisible = false;this.fetchCategories();} catch (error) {console.error(error);}},async deleteCategory(id) {try {await axios.delete(`/api/categories/${id}`);this.fetchCategories();} catch (error) {console.error(error);}},deleteSelectedCategories() {this.selectedCategoryIds.forEach(id => {this.deleteCategory(id);});this.selectedCategoryIds = [];this.selectAll = false;}},created() {this.fetchCategories();}
};
</script><style scoped>
table {border - collapse: collapse;width: 100%;
}
table th,
table td {border: 1px solid #ccc;padding: 8px;text - align: left;
}
</style>
package com.example.demo.controller;import com.example.demo.entity.SnowboardCategory;
import com.example.demo.service.SnowboardCategoryService;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;import java.util.List;@RestController
@RequestMapping("/api/categories")
public class SnowboardCategoryController {private final SnowboardCategoryService snowboardCategoryService;public SnowboardCategoryController(SnowboardCategoryService snowboardCategoryService) {this.snowboardCategoryService = snowboardCategoryService;}@GetMappingpublic ResponseEntity<List<SnowboardCategory>> getAllCategories() {List<SnowboardCategory> categories = snowboardCategoryService.getAllCategories();return new ResponseEntity<>(categories, HttpStatus.OK);}@GetMapping("/{id}")public ResponseEntity<SnowboardCategory> getCategoryById(@PathVariable Long id) {SnowboardCategory category = snowboardCategoryService.getCategoryById(id);if (category != null) {return new ResponseEntity<>(category, HttpStatus.OK);}return new ResponseEntity<>(HttpStatus.NOT_FOUND);}@PostMappingpublic ResponseEntity<SnowboardCategory> createCategory(@RequestBody SnowboardCategory category) {SnowboardCategory createdCategory = snowboardCategoryService.createCategory(category);return new ResponseEntity<>(createdCategory, HttpStatus.CREATED);}@PutMapping("/{id}")public ResponseEntity<SnowboardCategory> updateCategory(@PathVariable Long id, @RequestBody SnowboardCategory updatedCategory) {SnowboardCategory category = snowboardCategoryService.updateCategory(id, updatedCategory);if (category != null) {return new ResponseEntity<>(category, HttpStatus.OK);}return new ResponseEntity<>(HttpStatus.NOT_FOUND);}@DeleteMapping("/{id}")public ResponseEntity<Void> deleteCategory(@PathVariable Long id) {snowboardCategoryService.deleteCategory(id);return new ResponseEntity<>(HttpStatus.NO_CONTENT);}
}
package com.example.demo.entity;import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;@Entity
public class SnowboardCategory {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id;private String categoryName;public Long getId() {return id;}public void setId(Long id) {this.id = id;}public String getCategoryName() {return categoryName;}public void setCategoryName(String categoryName) {this.categoryName = categoryName;}
}
相关文章:
基于javaweb的SpringBoot雪具商城系统设计与实现(源码+文档+部署讲解)
技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…...
Android 简化图片加载与显示——使用Coil和Kotlin封装高效工具类
为了简化使用Coil加载网络图片和GIF的过程,我们可以封装一个工具类。这个工具类将包括初始化ImageLoader的方法、加载图片到ImageView的方法,以及可能的其他便捷方法,如加载圆形图片、设置占位图等。下面是一个示例: 首先&#x…...
Flink watermark的时间字段有空值,建表的时候,如何处理
在 Flink 中处理时间字段存在空值时,需通过 表定义阶段的特殊处理 和 Watermark 生成策略调整 来避免因空值导致的窗口计算异常或任务失败。以下是具体解决方案及实现方法: 1. 空值处理核心策略 1.1 查询时,过滤空值数据(推荐&am…...
关于matlab和python谁快的问题
关于matlab和python谁快的问题,python比matlab在乘法上快10倍,指数计算快4倍,加减运算持平,略慢于matlab。或许matlab只适合求解特征值。 import torch import timen 50000 # 矩阵规模 M torch.rand(n, 31)start_time time.t…...
【DevOps】DevOps and CI/CD Pipelines
DevOps 是一种将开发与运维实践相结合的模式,旨在缩短软件开发周期并交付高质量软件。 DevOps 是什么? 开发团队与运维团队之间的协作 • 持续集成与持续交付(CI/CD) • 流程自动化 • 基础设施即代码(IaC)…...
ROS--IMU数据包
IMU惯性测量单元 一:IMU二:ROS中三:IMU数据包三:总结 提示:以下是本篇文章正文内容,下面案例可供参考 一:IMU IMU(Inertial Measurement Unit,惯性测量单元)…...
【机器学习】手撕封装PCA——将高维数据映射到低维数据的过程
PCA将高维数据映射到低维数据的过程 一、摘要二、PCA的降维思路三、PCA代码实现降维过程3.1 PCA类的实现与封装3.2 PCA类的使用示例 四、PCA的恢复过程 一、摘要 本文详细介绍了主成分分析法(PCA)在高维数据降维中的应用。首先,阐述了PCA的基…...
LangChain开发(七)自定义输出格式(JSON/XML/YAML)
文章目录 JSON结构输出未使用PydanticPydantic流式处理 XML结构输出xml输出指定字段 YAML输出源码地址参考资料 JSON结构输出 虽然一些模型提供商支持内置的方法返回结构化输出,但并非所有都支持。我们可以使用输出解析器来帮助用户通过指示指定任意的JSON模型&…...
RustDesk部署到linux(自建服务器)
简介 RustDesk是一款开源的远程桌面软件,由中国开发者开发,使用Rust编程语言构建。它支持跨平台运行,可以在Windows、macOS、Linux、iOS、Android和Web等多个平台上使用。RustDesk的主要功能包括远程桌面访问、文件传输、文本聊天等&…...
分布式锁,redisson,redis
目录 什么是分布式锁分布式锁解决什么问题分布式锁的特点使用分布式锁的场景怎么使用分布式锁1. 添加依赖2. 配置 Redisson 客户端3. 使用 Redisson 实现分布式锁 什么是分布式锁 分布式锁是一种锁机制,用于在分布式环境下,解决多个线程并发访问同一共享…...
linux常用指令(9)
加油同志们,我们离胜利不远了,再有两天我们就可以了解完linux的一些基本常用指令了,到时我们便可以进入一些shell脚本语法了,那么话不多说,来看. 1.more指令 功能描述:more指令是一个基于vi编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容. 基本语法…...
深入解析 JVM 内存区域及核心概念
深入解析 JVM 内存区域及核心概念 Java 虚拟机(JVM)内部划分了多个内存区域,每个区域存储不同类型的数据并承担不同的职责。本文将详细介绍以下内容: 程序计数器:记录当前线程正在执行的字节码指令及其“行号”信息&a…...
字节跳动春招研发部笔试题解
字节跳动春招研发部笔试题 1.万万没想到之聪明的编辑 我叫王大锤,是一家出版社的编辑。我负责校对投稿来的英文稿件,这份工作非常烦人,因为每天都要去修正无数的拼写错误。但是,优秀的人总能在平凡的工作中发现真理。我发现一个发…...
java对象模型
java对象自身的存储模型JVM会给这个类创建一个instanceKlass,保存在方法区,用来在JVM层表示该Java类。 a类。当我们在Java代码中,使用new创建一个对象的时候,JVM会在栈中给对象赋值,会在堆中创建一个instanceOopDesc对…...
深入理解指针(3)(C语言版)
文章目录 前言 一、字符指针变量二、数组指针变量2.1 数组指针变量是什么2.2 数组指针变量怎么初始化2.2.1 静态初始化2.2.2 动态初始化 三、二维数组传参的本质四、函数指针变量4.1 函数指针变量的创建4.2 函数指针变量的使用4.3 typedef关键字4.4拓展 五、函数指针数组六、转…...
Linux内核 内存管理 物理内存初始化流程
1.ARM64页表初始化流程图 start_kernel()│▼ setup_arch() // 架构相关初始化│▼ early_fixmap_init() // 初始化Fixmap(临时映射设备树等)│▼ arm64_memblock_init() // 从设备树解析内存布局│▼ arm…...
Day23:和为s的数字
购物车内的商品价格按照升序记录于数组 price。请在购物车中找到两个商品的价格总和刚好是 target。若存在多种情况,返回任一结果即可。 示例 1: 输入:price [3, 9, 12, 15], target 18 输出:[3,15] 或者 [15,3]示例 2&#x…...
Transformer 通关秘籍2:利用 BERT 将文本 token 化
前面两节分别通过两个代码示例展示了模型将文本转换为 token 之后是什么样的,希望你可以对此有一个感性的认识。 本节来简要介绍一下将一个连续的文本转换为 token 序列的大致过程,这个过程被称为分词,也叫 tokenization。 在你没了解这方面…...
电脑干货:万能驱动--EasyDrv8
目录 万能驱动EasyDrv8 功能介绍 主程序界面 驱动解压与安装 PE环境支持 系统部署环境 桌面环境一键解决方案 万能驱动8电脑版是由IT天空出品的一款智能识别电脑硬件并自动安装驱动的工具,一般又称为it天空万能驱动,万能驱动vip版,简称…...
18502 字符串哈希匹配字符串
18502 字符串哈希匹配字符串 ⭐️难度:中等 🌟考点:字符串hash 📖 📚 import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner;public class Main {static int…...
openmmlab介绍 一下
OpenMMLab 是由商汤科技(SenseTime)发起并维护的开源深度学习项目,专注于计算机视觉领域。它提供了一系列模块化、可扩展的工具库,旨在帮助研究者和开发者高效地实现、复现和部署前沿的视觉算法。OpenMMLab 的设计强调模块化、…...
基于javaweb的SpringBoot线上网络文件管理系统设计与实现(源码+文档+部署讲解)
技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…...
【设计模式】工厂模式详解-----简单工厂模式、工厂方法模式、抽象工厂模式
工厂模式详解 一、概述 工厂模式(Factory Pattern) 是一种 创建型设计模式,用于 封装对象的创建逻辑,避免在代码中直接实例化对象,从而提高代码的 可维护性、扩展性和解耦性。 二、工厂模式分类 工厂模式包括 简单工…...
【雅思播客09】Turn Left here.
Hello everyone! And welcome to my channel! Im Reevs. Good morning! 大家好,欢迎来到懒人英语晨读栏目,我是Reevs,早上好呀。 I have a great lesson for you today. 今天我有一堂非常棒的课。 We have an elementary lesson, which is …...
初阶7 vector
本章重点 vector的介绍vector的使用vector的模拟实现 1.vector的介绍 vector就类似数据结构中的顺序表 vector是表示可变大小数组的序列容器。 就像数组一样,vector也采用的连续存储空间来存储元素。 意味着可以采用下标对vector的元素 进行访问,和数…...
归并排序总结
归并排序是分治法的典型应用,把两个或k个有序的子序列合并为一个。2路归并,2合一。k路归并,k合一。内部排序通常采用2路归并排序,先将数组分成两半,分别排序,然后合并。合并的过程需要将两个有序的子数组合…...
ollama迁移已下载的单个模型到服务器
ollama迁移已下载的单个模型到服务器 场景 ollama是面向用户级的,部署和运行都很简单,是否高效就另说了。但最起码,他能充分利用用户的硬件设备,在GPU不足也能调用cpu和内存去加持。 ollama运行的模型基本是量化版本的…...
基于SSM+Vue物流信息管理系统(附源码)
预览页面 获取方式 https://gitee.com/XiaoLin_Java/communion/blob/master/README.en.md...
docker创建registry镜像仓库2.8版本
目录 shell脚本内容 运行效果 问题与解决 涉及镜像包registry:2.8(x86版本) shell脚本内容 [roottest1 docker]# cat registry.sh #!/bin/bash read -p "请输入用户:" user read -p "请输入密码:" passpathpwd passdir"$…...
Ubuntu下用QEMU模拟运行OpenBMC
1、前言 在调试过程中,安装了很多依赖库,具体没有记录。关于kvm,也没理清具体有什么作用。本文仅记录,用QEMU成功的将OpenBMC跑起来的过程,做备忘,也供大家参考。 2、环境信息 VMware Workstation 15 Pro…...
Unity Shader编程】之复杂光照
在Unity Shader的LightMode标签中,除了前向渲染和延迟渲染外,还支持多种渲染模式设置。以下是主要分类及用途: 一、核心渲染路径模式 前向渲染相关 ForwardBase 用于基础光照计算,处理环境光、主平行光、逐顶点/SH光源及光照贴图。…...
从零构建大语言模型全栈开发指南:第二部分:模型架构设计与实现-2.1.3前馈网络(FFN)与激活函数(GELU)优化
👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 2.1.3 前馈网络(FFN)与激活函数(GELU)优化1. 前馈网络(FFN)的架构设计与数学原理1.1 FFN在Transformer中的核心作用2. GELU激活函数的数学特性与优化2.1 GELU的数学形式与近似计算3. 逐行代码实现…...
STM32 MODBUS-RTU主从站库移植
代码地址 STM32MODBUSRTU: stm32上的modbus工程 从站 FreeModbus是一个开源的Modbus通信协议栈实现。它允许开发者在各种平台上轻松地实现Modbus通信功能,包括串口和以太网。FreeMODBUS提供了用于从设备和主站通信的功能,支持Modbus RTU和Modbus TCP协…...
计算机是如何工作的
目录 冯诺依曼体系 CPU基本工作流程: 逻辑门 门电路 算术逻辑单元 ALU(Arithmetic&LogicUnit) 算术单元(Arithmetic Unit) 逻辑单元(Logic Unit) ALU符号 寄存器(Register)和内存(RAM) 控制单元 CU(Control Unit) 指令(Instruc…...
Arduino、ESP32驱动GUVA-S12SD UV紫外线传感器(光照传感器篇)
目录 1、传感器特性 2、控制器和传感器连线图 3、驱动程序 UV紫外线传感器是一个测试紫外线总量的最佳传感器,它不需要使用波长滤波器,只对紫外线敏感。 Arduino UV紫外线传感器,直接输出对应紫外线指数(UV INDEX)的线性电压,输出电压范围大约0~1100mV(对应UV INDEX值…...
【NLP 48、大语言模型的神秘力量 —— ICL:in context learning】
目录 一、ICL的优势 1.传统做法 2.ICL做法 二、ICL的发展 三、ICL成因的两种看法 1.meta learning 2.Bayesian Inference 四、ICL要点 ① 语言模型的规模 ② 提示词prompt中提供的examples数量和顺序 ③ 提示词prompt的形式(format) 五、fine-tune VS I…...
面向对象软件工程实践软件案例
智力运动-数字化思维训练课程介绍 数字化思维训练是科技赋能素质教育创新实践项目,通过数字化信息化手段,深度融合优质原创智力运动教育课程资源,服务幼儿园与小学,提供信息时代校园素质教育教学解决方案。在《面向对象软件工程》…...
PX4飞控-接收MAVLINK消息(2)-生成MAVLINK_MSG_ID_***.h文件
我在自制的底板上跑vxworks操作系统中移植了MAVLINK的C库用来与PX4飞控进行通信,其中使用的C库和其他依赖文件,例如common文件夹均为从飞控源码中获取,文件获取位置为px4-Autopolite/bulid/mavlink中,因为PX4源码中自带MAVLINK的依…...
Spring Boot 连接 MySQL 配置参数详解
Spring Boot 连接 MySQL 配置参数详解 前言参数及含义常用参数及讲解和示例useUnicode 参数说明: 完整配置示例注意事项 前言 在 Spring Boot 中使用 Druid 连接池配置 MySQL 数据库连接时,URL 中 ? 后面的参数用于指定连接的各种属性。以下是常见参数…...
【数据结构】_单链表_相关面试题(二)
本章重点 hello友友们~ 今天我们将对单链表的后半部分的相关面试题进行详细解析,下面就跟着我一起开启吧~ really GO! 1.相交链表 题目: 输入两个链表,找出它们的第一个公共结点。 代码分析: //找到相交结点…...
深入理解指针(2)(C语言版)
文章目录 前言一、数组名的理解二、使用指针访问数组三、一维数组传参的本质四、冒泡排序五、二级指针六、指针数组七、指针数组模拟二维数组总结 前言 在上一篇文章中,我们初步了解了指针的基本概念和用法。今天,我们将继续深入探索指针在数组、函数传…...
二叉树相关算法实现:判断子树与单值二叉树
目录 一、判断一棵树是否为另一棵树的子树 (一)核心思路 (二)代码实现 (三)注意要点 二、判断一棵树是否为单值二叉树 (一)核心思路 (二)代码实现…...
redux ,react-redux,redux-toolkit 简单总结
Redux、React-Redux 和 Redux Toolkit 是协同工作的三个库,各自承担不同角色,相互协同。 Redux:基础底座 底层状态管理库,负责状态存储、Action 派发和 Reducer 执行 React-Redux:连接 React 组件与 Redux Store 通…...
5. 实现一个中间件
原文地址: 实现一个中间件 更多内容请关注:php代码框架 理解中间件 中间件(Middleware) 是一种在请求被路由到控制器方法之前或响应返回客户端之前执行的代码。它通常用于处理通用任务,如身份验证、日志记录、CORS 处理等。 在…...
数据库理论基础
数据库理论基础 1.1 什么是数据库 数据: 描述事物的符号记录, 可以是数字、 文字、图形、图像、声音、语言等,数据有多种形式,它们都可以经过数字化后存入计算机。 数据库: 存储数据的仓库,是长期存放在…...
STM32学习笔记之振荡器(原理篇)
📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…...
SQL Server安装程序无法启动:系统兼容性检查失败
问题现象: 运行 SQL Server 2022 安装程序时,提示 “硬件或软件不满足最低要求”,安装向导直接退出或无法继续。 快速诊断 操作系统版本检查: # 查看 Windows 版本(需 20H2 或更高) winver 支持的系统&…...
C++20 中的std::c8rtomb和 std::mbrtoc8
文章目录 1. 引言2. std::c8rtomb 函数详解3. std::mbrtoc8 函数详解4. 使用示例5. 注意事项6. 总结 1. 引言 C20 标准引入了对 UTF-8 编码的更好支持,其中包括两个重要的函数:std::c8rtomb 和 std::mbrtoc8。这两个函数分别用于将 UTF-8 编码的字符转换…...
树形结构的工具类TreeUtil
这个地方是以null为根节点,相关以null或者0自己在TreeUtil中加代码,就行 基础类 package com.jm.common.entity;import lombok.Data;import java.util.ArrayList; import java.util.List;/*** Author:JianWu* Date: 2025/3/26 9:02*/ Data public clas…...
【零基础入门unity游戏开发——2D篇】2D物理系统 —— 2D刚体组件(Rigidbody2D)
考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了C#篇、unity通用篇、unity3D篇、unity2D篇。 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、流程控制、面向对象等,适合没有编程基础的…...