当前位置: 首页 > news >正文

网站风格发展趋势关键信息基础设施安全保护条例

网站风格发展趋势,关键信息基础设施安全保护条例,女生学建筑选择什么专业,为什么网站生成后不显示springbootvue3 【尚硅谷Java项目《尚品甄选》 SpringBootSpringCloud萌新学会企业级java项目】003.后台系统-搭建前端环境(工程创建)_哔哩哔哩_bilibili E:\project\AllProJect\Shangpin Selection\项目材料素材\课件\尚品甄选项目课件 前端套用框架…

springboot+vue3

【尚硅谷Java项目《尚品甄选》 SpringBoot+SpringCloud萌新学会企业级java项目】003.后台系统-搭建前端环境(工程创建)_哔哩哔哩_bilibili

E:\project\AllProJect\Shangpin Selection\项目材料素材\课件\尚品甄选项目课件

前端套用框架步骤

位置:E:\project\AllProJect\Shangpin Selection\项目材料素材\资料\资料\04-前端模板

下载依赖

npm 

# 将permission.js中的相关代码
# 原代码:import { TOKEN } from '@/store/modules/app' // TOKEN变量名
# 更改为如下代码:
import { TOKEN } from '@/pinia/modules/app' // TOKEN变量名

修改完后,在master目录下开启前端项目

npm start

后端项目搭建步骤

创建项目

删除src目录,因为不写具体代码

创建模块目录

删除common的src,并且新建两个模块

  • spzx-parent: 尚品甄选项目的父工程,进行项目依赖的统一管理,打包方式为pom
  • spzx-common: 尚品甄选项目公共模块的管理模块,父工程为spzx-parent
  • common-util: 工具类模块,父工程为spzx-common
  • common-service:公共服务模块,父工程为spzx-common
  • spzx-model: 尚品甄选实体类模块
  • spzx-manager: 尚品甄选项目后台管理系统的后端服务

下载maven

spzx-parent

在此pom.xml中修改文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.xuan</groupId><artifactId>spzx-parent</artifactId><version>1.0-SNAPSHOT</version><packaging>pom</packaging><modules><module>spzx-common</module><module>spzx-model</module><module>spzx-manager</module></modules><!-- 指定父工程 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.5</version></parent><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><mysql.verison>8.0.30</mysql.verison><fastjson.version>2.0.21</fastjson.version><lombok.version>1.18.20</lombok.version><mybatis.version>3.0.1</mybatis.version></properties><!-- 管理依赖,版本锁定 --><dependencyManagement><dependencies><!-- mybatis和spring boot整合的起步依赖 --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis.version}</version></dependency><!-- mysql驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!--fastjson--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>${fastjson.version}</version></dependency><!-- lombok依赖 --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>${lombok.version}</version></dependency></dependencies></dependencyManagement></project>

spzx-common

pom加入

<dependencies><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.5.2</version></dependency>
</dependencies>

common-util

<dependencies><!-- fastjson依赖 --><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId></dependency><dependency><groupId>com.xuan</groupId><artifactId>spzx-model</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.5.2</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><scope>provided </scope></dependency>
</dependencies>

common-service

在spzx-common下面创建该子模块,并导入如下依赖:

<dependencies><!-- common-util模块 --><dependency><groupId>com.xuan</groupId><artifactId>common-util</artifactId><version>1.0-SNAPSHOT</version></dependency><!-- spzx-model模块 --><dependency><groupId>com.xuan</groupId><artifactId>spzx-model</artifactId><version>1.0-SNAPSHOT</version></dependency><!-- spring boot web开发所需要的起步依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><scope>provided</scope></dependency></dependencies>

spzx-model

  • 在spzx-parent下面创建该子模块,并导入如下依赖:
<dependencies><!-- lombok的依赖 --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId><version>4.1.0</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.0</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId></dependency>
</dependencies>
复制实体类(也可以先不创建)

位置E:\project\AllProJect\Shangpin Selection\项目材料素材\资料\资料\01-实体类

spzx-manager

在spzx-parent下面创建该子模块,并导入如下依赖:

<dependencies><!-- spring boot web开发所需要的起步依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- redis的起步依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><!-- mybatis的起步依赖 --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId></dependency><!-- mysql驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!-- common-service依赖 --><dependency><groupId>com.xuan</groupId><artifactId>common-service</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.3</version></dependency>
</dependencies>

安装docker

下载虚拟机

VM虚拟机的下载与安装教程_vm下载教程-CSDN博客

新建虚拟机

LinuxVM安装与配置教程:从VMware到Docker与MySQL部署-CSDN博客

看自己笔记安装完了docker继续

如果不知道怎么安装docker可以参照我的笔记

数据库环境准备

本地安装mysql数据库使用的是docker安装,对应的步骤如下所示:

  • 部署mysql

开发阶段也可以连接本地mysql服务

# 拉取镜像
docker pull mysql:8.0.30# 创建容器
docker run -d --name mysql -p 3306:3306 -v mysql_data:/var/lib/mysql -v mysql_conf:/etc/mysql --restart=always --privileged=true -e MYSQL_ROOT_PASSWORD=1234 mysql:8.0.30

docker安装完成mysql8,如果使用sqlyog或者navite连接,需要修改密码加密规则,因为低版本客户端工具不支持mysql8最新的加密规则。如果使用客户端连接,需要修改:

  • docker exec -it 容器ID bash进入mysql容器
  • mysql -uroot -p 登录你的 MySQL 数据库,然后 执行这条SQL:
  • exit退出
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234';

然后再重新配置SQLyog的连接,重新填写密码,则可连接成功了。

把数据库拖入

部署Redis

  • 使用docker部署Redis,具体的操作如下所示:

开发阶段也可以连接本地redis服务

#1 拉取镜像
docker pull redis:7.0.10#2 在宿主机的 /var/lib/docker/volumes/redis-config/_data/目录下创建一个redis的配置文件,
vim redis.conf
# 内容如下所示
#开启持久化
appendonly yes
port 6379
# requirepass 1234
bind 0.0.0.0#3 如果/var/lib/docker/volumes没有redis-config,创建数据卷 
docker volume create redis-config#4 创建容器
docker run -d -p 6379:6379 --restart=always \
-v redis-config:/etc/redis/config \
-v redis-data:/data \
--name redis redis \
redis-server /etc/redis/config/redis.conf

整合Swagger

Swagger

  • Swagger是一种基于OpenAPI规范的API文档生成工具,它可以根据Java代码中的注解自动生成API接口文档,并提供UI界面进行在线测试和调试。
  • Swagger为开发人员提供了更加方便、直观的API管理方式,有助于提升API的可读性和可维护性。
  • Swagger的主要特点包括:

1、自动生成API文档:通过在Java代码中添加Swagger注解,Swagger能够自动地解析API接口的参数、响应等信息,并生成相应的API文档。

2、在线测试接口:Swagger提供了UI界面,可以方便地进行API接口的测试和调试,无需单独使用HTTP客户端来测试接口。

3、支持多种语言和框架:Swagger不仅支持Java语言和Spring框架,还支持多种其他语言和框架,如PHP、Python、Go等。

4、扩展性强:Swagger提供了多种扩展机制和插件,可以满足各种项目的需要,如集成OAuth2、自定义UI等。

Swagger提供的UI界面相比于另外一款Api文档生成工具Knife4j较为简陋。

Knife4j使用

官方文档使用地址:快速开始 | Knife4j

具体的步骤:

在common-service模块中添加knife4j所需要的配置类

@Configuration
public class Knife4jConfig {@Beanpublic GroupedOpenApi adminApi() {      // 创建了一个api接口的分组return GroupedOpenApi.builder().group("admin-api")         // 分组名称随便起.pathsToMatch("/admin/**")  // 接口请求路径规则要求用admin开头.build();}/**** @description 自定义接口信息*/@Beanpublic OpenAPI customOpenAPI() {return new OpenAPI().info(new Info().title("尚品甑选API接口文档").version("1.0").description("尚品甑选API接口文档").contact(new Contact().name("atguigu"))); // 设定作者}}

启动项目就可以访问到knife4j所生成的接口文档了。访问地址:http://项目ip:端口号/doc.html

常见注解

在Knife4j中也提供了一些注解,让我们对接口加以说明,常见的注解如下所示:

@Tag: 用在controller类上,对controller进行说明
@Operation: 用在controller接口方法上对接口进行描述
@Parameters:用在controller接口方法上对单个参数进行描述
@Schema: 用在实体类和实体类属性上,对实体类以及实体类属性进行描述

举例说明:

@Tag(name = "首页接口")
public class IndexController {@Operation(summary = "用户登录")public Result<LoginVo> login(@RequestBody LoginDto loginDto) {...}@Operation(summary = "用户退出")@Parameters(value = {@Parameter(name = "令牌参数" , required = true)})@GetMapping(value = "/logout")public Result logout(@RequestHeader(value = "token") String token) {...}}@Data
@Schema(description = "用户登录请求参数")
public class LoginDto {@Schema(description = "用户名")private String userName ;@Schema(description = "密码")private String password ;@Schema(description = "提交验证码")private String captcha ;@Schema(description = "验证码key")private String codeKey ;}

导出

Knife4j生成的接口文档是一个在线的接口文档使用起来不是特别的方便,当然Knife4j也支持离线接口文档,并且支持导出json格式的数据,如下所示:

http://www.dtcms.com/a/556491.html

相关文章:

  • 网站上的广告怎么做经典软文推广案例
  • 优惠建设网站wordpress采集淘宝商品
  • 深圳建设局招标网站设计网站登录框ps怎么做
  • 郑州美容网站建设wordpress分类目录keyword
  • 查建设工程规划许可证在哪个网站wordpress addoption
  • 相亲网站域名交易
  • 做商城类网站空间怎么买校园网站怎么建设
  • 400元做网站送网推空壳网站查询
  • 企业管理平台系统网站自己做购物网站推广
  • wordpress多条件百度seo如何做
  • 网站建设优化的作用新建网站的评估
  • 网站建设具体运算东莞网站设计报价
  • 服装网站建设论文建筑平面设计图
  • 建网站在线支付怎么专注江苏网站建设
  • 基于php技术的网站开发芜湖网站网站建设
  • 建立自己的网站可以采用的方式有我想接app纯注册推广单
  • 网站建设可以一次性进损益吗泾川县门户网站留言
  • 合肥网站开发需要惠城中山网站建设
  • 接网站开发外包做电源的网站
  • 建设卒中中心几个网站宁波网站优化公司
  • 网站模板安装教程网站推广做招商加盟
  • 和规划网站如何互联网营销师主要做什么
  • 海宁市住房和城乡规划建设局网站无锡有名的设计公司
  • 瑞安机械网站建设做个游戏网站多少钱
  • 百度推广建设网站是不是合发满洲里建设局网站
  • 网站关键词 公司网站怎么做图片动态
  • 米拓做网站图片在哪里删掉上海网站建设推荐秒搜科技
  • 易书网上书城网站建设方案网站建设研究的意义
  • 网站建设中的财务预算网站优化锚文本链接之精髓
  • 做有源代码的网站有什么好处自己做抽奖网站违法吗