基于Java+Springboot+Mybatis+Vue+微信小程序的轿车改装设计方案

微信小程序的轿车改装设计方案,用户可以自行在小程序中查看某型号轿车的零件,可以查看相关的汽车资源。

  • 一、API
    • 1.1 SpringBoot框架搭建
    • 1.2 数据库设计
    • 1.3 实体映射创建Mapper
    • 1.4 接口封装
    • 1.5 常用字段类型
  • 二、小程序
    • 2.1 项目创建
    • 2.2 首页
    • 2.3 产品中心页
  • 三、管理端
    • 3.1 项目创建
    • 3.2 页面设计
    • 3.3 接口调用
    • 说明

一、API

1.1 SpringBoot框架搭建

1.创建maven project,先创建一个名为SpringBootDemo的项目,选择【New Project】

在这里插入图片描述

然后在弹出的下图窗口中,选择左侧菜单的【New Project】

在这里插入图片描述
在这里插入图片描述

2.在project下创建module,点击右键选择【new】—【Module…】

在这里插入图片描述

左侧选择【Spring initializr】,通过idea中集成的Spring initializr工具进行spring boot项目的快速创建。窗口右侧:name可根据自己喜好设置,group和artifact和上面一样的规则,其他选项保持默认值即可,【next】

在这里插入图片描述

Developer Tools模块勾选【Spring Boot DevTools】,web模块勾选【Spring Web】,此时,一个Springboot项目已经搭建完成,可开发后续功能

在这里插入图片描述

1.2 数据库设计

可使用MySQL / SQL Server 数据库作为数据支持,表结构及字段设计大致如下图,未完善待补充

--创建数据库
CREATE DATABSE cat;--选中数据库
USE cat;--创建用户表
CREATE TABLE [dbo].[t_sys_user]([user_code] [nvarchar](40) NOT NULL,--用户账号[user_name] [nvarchar](200) NOT NULL,--用户姓名[user_pwd] [nvarchar](50) NOT NULL,--账号密码[id_number] [nvarchar](20) NULL,--身份证号[email] [nvarchar](200) NULL,--邮箱[tel] [nvarchar](40) NULL,--电话[mobile] [nvarchar](40) NULL,--手机[valid] [int] NOT NULL,--状态[last_login_time] [datetime] NULL,--最后登录时间[login_err_times] [int] NOT NULL,--累计登录错误次数(登录正确后置为0)[remarks] [nvarchar](2000) NULL,--备注[time_create] [datetime] NULL,[create_by] [nvarchar](40) NULL,[time_update] [datetime] NULL,[update_by] [nvarchar](40) NULL,[open_id] [nvarchar](50) NULL,--小程序的openid[union_id] [nvarchar](50) NULL,--小程序的unionidCONSTRAINT [pk_t_sys_user] PRIMARY KEY CLUSTERED 
([user_code] ASC
)
) ON [PRIMARY]
GO

1.3 实体映射创建Mapper

创建一个entity实体类文件夹,并在该文件夹下创建项目用到的实体类

这里是引用

package com.example.demo.entity;import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;@Data
public class User {@TableId(type = IdType.AUTO)private Long id;private String account;private String pwd;private String userDesc;private String userHead;private LocalDateTime createTime;private Long role;private String nickname;private String email;private String tags;
}

1.4 接口封装

由于我们使用mybatis-plus,所以简单的增删改查不用自己写,框架自带了,只需要实现或者继承他的Mapper、Service

在这里插入图片描述

创建控制器Controller

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数据库连接、mybatis-plus的分页插件、以及跨域配置

在这里插入图片描述

1.5 常用字段类型

字段类型所占字节存储范围最大存储值使用场景
TINYINT1-128~127127存储小整数
INT4-2147483648~21474836472147483647存储大整数
BIGINT8-9223372036854775808~92233720368547758079223372036854775807存储极大整数
DECIMAL可变长度存储精度要求高的数值
CHAR固定长度最多255字节255个字符存储长度固定的字符串
VARCHAR可变长度最多65535字节65535个字符存储长度不固定的字符串
DATETIME8‘1000-01-01 00:00:00’~‘9999-12-31 23:59:59’‘9999-12-31 23:59:59’存储日期和时间

二、小程序

2.1 项目创建

小程序账号申请及项目创建可参考该专栏其他文章步骤内容,这里不再重复赘述
微信小程序实战开发专栏

2.2 首页

首页可以采用banner当背景的形式来进行展示,后台可以对banner进行管理,设置其类型是广告/产品/外链等,小程序端可根据其类型进行不同的响应。

首页下方获取用户头像、昵称等字段进行展示,同时可以通过跑马灯的方式将站内通知进行展示

<image src="{{banner}}" class="banner" mode="widthFix"></image>
<view class="content"><view class="userInfo"><image src="../../images/cat.jpg" class="userHead"></image><view class="userName"><image src="{{user.Image}}" class="userIcon"></image><view>{{user.Name}}</view></view><image src="../../images/order.png" class="goOrder" bindtap="choicePro"></image></view><view class="border"></view><view class="notice" bindtap="goOrder"><view class="noticeTitle">{{notice}}</view><image src="../../images/right.png" class="right"></image></view>
</view>

2.3 产品中心页

在首页提供图标入口用户访问产品中心页

<swiper class="screen-swiper round-dot" indicator-dots="true" circular="true" autoplay="true" interval="5000" duration="500"><swiper-item wx:for="{{1}}" wx:key><image src="https://img0.baidu.com/it/u=3945519598,1315447112&fm=253&fmt=auto&app=120&f=JPEG?w=900&h=383" mode='aspectFill'></image></swiper-item>
</swiper><scroll-view class="VerticalNav nav" scroll-y scroll-with-animation scroll-top="{{VerticalNavTop}}" style="height:calc(100vh - 375rpx)"><view class="cu-item text-green cur"  wx:key bindtap='tabSelect' data-id="{{index}}">{{item.typeName}}</view></scroll-view>

三、管理端

3.1 项目创建

可通过vsCode / Hbulider等开发工具进行项目创建,根据个人的开发习惯选择项目类型

在这里插入图片描述

3.2 页面设计

页面主要分为左侧菜单导航及右侧内容,通过iframe实现点击展示的效果

在这里插入图片描述

   // 滚动条const ps = new PerfectScrollbar('.lyear-layout-sidebar-scroll', {swipeEasing: false,suppressScrollX: true});// 侧边栏$(document).on('click', '.lyear-aside-toggler', function() {$('.lyear-layout-sidebar').toggleClass('lyear-aside-open');$("body").toggleClass('lyear-layout-sidebar-close');if ($('.lyear-mask-modal').length == 0) {$('<div class="lyear-mask-modal"></div>').prependTo('body');} else {$( '.lyear-mask-modal' ).remove();}});// 遮罩层$(document).on('click', '.lyear-mask-modal', function() {$( this ).remove();$('.lyear-layout-sidebar').toggleClass('lyear-aside-open');$('body').toggleClass('lyear-layout-sidebar-close');});

3.3 接口调用

前端框架使用layui渲染数据,通过url请求在控制器定义的接口

在这里插入图片描述

在这里插入图片描述

说明

因外部资源过大,可通过文章底部或首页名片添加博主,或通过私信获取项目。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/606520.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

常用python代码大全-random模块的一些常见用法

在Python中&#xff0c;random模块提供了许多用于生成随机数的函数。以下是一些常见的函数及其用法&#xff1a; 1.random.random(): 生成一个0.0到1.0之间的随机浮点数&#xff0c;包括0.0但不包括1.0。 import random print(random.random())2.random.randint(a, b): 生成一…

7.27 SpringBoot项目实战 之 整合Swagger

文章目录 前言一、Maven依赖二、编写Swagger配置类三、编写接口配置3.1 控制器Controller 配置描述3.2 接口API 配置描述3.3 参数配置描述3.4 忽略API四、全局参数配置五、启用增强功能六、调试前言 在我们实现了那么多API以后,进入前后端联调阶段,需要给前端同学提供接口文…

test mutation-03-变异测试 mujava Mutation 入门

拓展阅读 开源 Auto generate mock data for java test.(便于 Java 测试自动生成对象信息) 开源 Junit performance rely on junit5 and jdk8.(java 性能测试框架。性能测试。压测。测试报告生成。) test 系统学习-04-test converate 测试覆盖率 jacoco 原理介绍 Java (muJ…

【SWAT】 最简便的SWAT源码编译方法(gfortran)

目录 gfortran环境配置使用MSYS2-GFortran安装MSYS2软件安装MSYS2-GFortran软件安装MakeSWAT源代码编译SWAT源代码下载SWAT源代码修改(Makefile)SWAT源代码修改(其他)SWAT源代码编译步骤测试附录 SWAT Makefile参考文献笔者之前有介绍

【STM32】STM32学习笔记-串口发送和接收(27)

00. 目录 文章目录 00. 目录01. 串口简介02. 串口相关API2.1 USART_Init2.2 USART_InitTypeDef2.3 USART_Cmd2.4 USART_SendData2.5 USART_ReceiveData 03. 串口发送接线图04. USB转串口模块05. 串口发送程序示例06. 串口发送支持printf07. 串口发送支持printf_v208.09.10. 01.…

QT : Bson\Json互转

​ 简介 Bson 介绍 &#xff08;1&#xff09;官网 BSON (Binary JSON) Serialization &#xff08;2&#xff09;百度百科 BSON_百度百科 Json介绍 菜鸟教程 JSON 教程 | 菜鸟教程 转换 QT /CPP #include <QCoreApplication> #include <QJsonDocument> #…

Android-设计模式

设计模式 23 种经典的设计模式。它们又可以分为三大类&#xff1a;创建型、结构型、行为型。 创建型 常用的有&#xff1a;单例模式、工厂模式&#xff08;工厂方法和抽象工厂&#xff09;、建造者模式。 不常用的有&#xff1a;原型模式。结构型 常用的有&#xff1a;代理模…

02 SQL更新语句是如何执行的

binlog 1.为什么需要binlog? binlog时Mysql的Server层的日志&#xff0c;是所有引擎都能用的。功能是数据归档也就是备份。但是不具备crash-safe的能力。 redolog 1.为什么需要redolog 每一次的更新操作都需要写进磁盘&#xff0c;然后磁盘也要找到对应的那条记录&#xff…

【leetcode100-034】【链表/优先队列】合并k个升序链表

【题干】 给你一个链表数组&#xff0c;每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中&#xff0c;返回合并后的链表。 【思路】 其实就是多路归并用一个优先队列简化k个头部的比较和选最小节点的过程然后就只剩一些细节处理啦都没啥好写的今天这题。。。…

Vue3 使用 Teleport 封装 一个 Dialog

文章目录 什么是Teleport ?用法:1. 通过 to 指定传送的位置2. 禁用 teleport3. 共享一个 Teleport封装一个Dialog效果:什么是Teleport ? 是一个内置组件,它可以将一个组件内部的一部分模板“传送”到该组件的 DOM 结构外层的位置去。 简单的说,Telep

NVIDIA深入理解之pynvml库

一、前言 写在前面 该文章是对我之前文章《Fedora上安装NVIDIA闭源显卡驱动》的一个拓展&#xff0c;正好寒假闲的没事干不如加深一下对NVIDIA的了解。Python是当前非常流行的一门编程语言&#xff0c;它以kiss为设计思想&#xff0c;能封装就能封装&#xff0c;给用户提供比…

【Linux Shell】11. 输入/输出 重定向

文章目录 【 1. 重定向简介 】【 2. 输出重定向 】【 3. 输入重定向 】【 4. Here Document 】【 5. /dev/null 文件 】 【 1. 重定向简介 】 大多数 UNIX 系统命令从终端接受输入并将所产生的输出发送回​​到原来输入的终端。一个命令通常从标准输入的地方读取输入&#xff…

信号的互相关计算及时延估计

1. 信号的互相关计算 互相关反映向量x和移位&#xff08;滞后&#xff09;向量y之间的相似性。 最直观的解释是&#xff1a;互相关的作用是为了找到信号在哪一时刻与另一信号最像&#xff08;另一信号为本身时就是自相关&#xff09;&#xff01; 滑动求互相关&#xff08;图…

海康威视摄像头+服务器+录像机配置校园围墙安全侦测区域入侵侦测+越界侦测

一、适用场景 1、校园内&#xff0c;防止课外时间翻越围墙到校外、从校外翻越围墙到校内&#xff1b; 2、通过服务器摄像头的侦测功能及时抓图保存&#xff0c;为不安全因素提供数字化依据&#xff1b; 3、网络录像机保存监控视频&#xff0c;服务器保存抓拍到的入侵与越界&am…

【React】02-如何理解React通过对DOM的模拟,最大限度地减少与DOM的交互

如何理解React通过对DOM的模拟&#xff0c;最大限度地减少与DOM的交互 背景分析关于虚拟DOM 背景 在学习React的过程中&#xff0c;发现很多文档上关于React的高效都有这么一句话的描述——React通过对DOM的模拟&#xff0c;最大限度地减少与DOM的交互&#xff0c;对于我这种前…

mysql服务多实例运行

1、官网下载mysql安装包 https://downloads.mysql.com/archives/community/ 2、解压安装包 tar -zxvf mysql-8.1.0-linux-glibc2.28-aarch64.tar.xz -C /usr/localmv /usr/local/mysql-8.1.0-linux-glibc2.28-aarch64 /usr/local/mysql 3、创建mysql用户组 groupadd…

Java面试汇总——redis篇

1、什么是缓存穿透 ? 怎么解决 ? 缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在&#xff0c;这样缓存就形同虚设&#xff08;只有数据库查到了&#xff0c;才会让redis缓存&#xff0c;但现在的问题是查不到&#xff09;&#xff0c;会频繁的去访问数据库。 解决…

这款Web剪藏工具绝了,支持10+平台内容剪辑同步!

前言 Web Clipper 是一个开源项目&#xff0c;旨在帮助用户轻松地保存和组织网页内容。它可以作为浏览器插件安装到常见的浏览器中&#xff0c;如Chrome、Firefox 等&#xff0c;用户可以使用它来保存网页、截取文章、添加标签和注释等操作&#xff0c;从而方便地管理和分享自…

python画彩虹和小熊

前言 今天&#xff0c;我们来画两个简单的图形。 一、彩虹 彩虹&#xff0c;又称天弓&#xff08;客家话&#xff09;、天虹、绛等&#xff0c;简称为"虹"&#xff0c;是气象中的一种光学现象。当太阳光照射到半空中的水滴时&#xff0c;光线被折射及反射&#xf…

任务调度中心

可以服务器配置和权限&#xff0c;分配任务执行。当服务器下线后&#xff0c;任务会被在线服务器接管&#xff0c;当重新上线后会在次执行任务。接管任务的服务器会释放任务。调度过程的实现&#xff0c;可以二次开发。基于 netty tcp 通信开发。 下载地址&#xff1a; http:/…