SpringBoot优点达项目实战:项目初始化(一)

SpringBoot优点达项目实战:项目初始化(一)


文章目录

      • SpringBoot优点达项目实战:项目初始化(一)
        • 1、项目介绍
        • 2、项目搭建
        • 3、依赖导入
        • 4、数据准备

1、项目介绍

技术框架

  • Springboot
  • mybatisPlus
  • vue
  • knife

image-20240624222059099

image-20240624222121466

2、项目搭建

搭建maven项目,共搭建四个

父工程:youdianda

子工程:common、model、web

其中web工程包含了后台和移动端,所以需要在web里面再搭建两个子工程:web-admin、web-app

youdianda/
│
├── .idea/
│
├── common/
│   ├── src/
│   └── pom.xml
│
├── model/
│   ├── src/
│   └── pom.xml
│
├── web/
│   ├── web-admin/
│   │   ├── src/
│   │   ├── target/
│   │   └── pom.xml
│   │
│   ├── web-app/
│   │   ├── src/
│   │   └── pom.xml
│   │
│   └── pom.xml
│
├── .gitignore
└── pom.xml

image-20240624220945865

详细说明

common 模块

  • common/src/: 存放公共代码,如工具类、常量、通用配置等。
  • common/pom.xml: 定义该模块的依赖和构建配置。

model 模块

  • model/src/: 存放数据模型相关代码,如实体类、DTO等。
  • model/pom.xml: 定义该模块的依赖和构建配置。

web 模块

  • web/pom.xml: 定义Web模块的依赖和构建配置。
    • web-admin 子模块
      • web-admin/src/: 存放管理后台相关的源代码。
      • web-admin/pom.xml: 定义该子模块的依赖和构建配置。
    • web-app 子模块
      • web-app/src/: 存放Web应用相关的源代码。
      • web-app/pom.xml: 定义该子模块的依赖和构建配置。
3、依赖导入

在父工程导入依赖,并进行版本控制

<?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.youdianda</groupId><artifactId>youdianda</artifactId><version>1.0-SNAPSHOT</version><packaging>pom</packaging><modules><module>common</module><module>model</module><module>web</module></modules><!-- 注意:直接替换pom文件中原有的properties --><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><mybatis-plus.version>3.5.3.1</mybatis-plus.version><swagger.version>2.9.2</swagger.version><jwt.version>0.11.2</jwt.version><easycaptcha.version>1.6.2</easycaptcha.version><minio.version>8.2.0</minio.version><knife4j.version>4.1.0</knife4j.version><aliyun.sms.version>2.0.23</aliyun.sms.version></properties><!-- 继承Spring Boot父项目 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.5</version></parent><!--配置dependencyManagement统一管理依赖版本--><dependencyManagement><dependencies><!--mybatis-plus--><!--官方文档:https://baomidou.com/pages/bab2db/ --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>${mybatis-plus.version}</version></dependency><!--knife4j文档--><!--官方文档:https://doc.xiaominfo.com/docs/quick-start --><dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId><version>${knife4j.version}</version></dependency><!--JWT登录认证相关--><!--官方文档:https://github.com/jwtk/jjwt#install-jdk-maven --><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-api</artifactId><version>${jwt.version}</version></dependency><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-impl</artifactId><scope>runtime</scope><version>${jwt.version}</version></dependency><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-jackson</artifactId><scope>runtime</scope><version>${jwt.version}</version></dependency><!--图形验证码--><!--官方文档:https://gitee.com/ele-admin/EasyCaptcha --><dependency><groupId>com.github.whvcse</groupId><artifactId>easy-captcha</artifactId><version>${easycaptcha.version}</version></dependency><!--对象存储,用于存储图像等非结构化数据--><!--官方文档:https://min.io/docs/minio/linux/developers/minio-drivers.html?ref=docs#java-sdk --><dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>${minio.version}</version></dependency><!--阿里云短信客户端,用于发送短信验证码--><!--官方文档:https://help.aliyun.com/document_detail/215759.html?spm=a2c4g.215759.0.0.49f32807f4Yc0y --><dependency><groupId>com.aliyun</groupId><artifactId>dysmsapi20170525</artifactId><version>${aliyun.sms.version}</version></dependency></dependencies></dependencyManagement>
</project>

在子工程web中的,web.xml,导入Springboot依赖

<dependencies><dependency><groupId>com.youdianda</groupId><artifactId>common</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>com.youdianda</groupId><artifactId>model</artifactId><version>1.0-SNAPSHOT</version></dependency><!--包含spring web相关依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--包含spring test相关依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>
</dependencies>
4、数据准备

导入sql文件,最终效果

image-20240624222431061
数据库包含了多个表,每个表都有其特定的用途。以下是对这些表的详细解释:

系统管理相关表

  1. sys_config
    • 描述: 系统配置表。
    • 备注: 存储系统配置项。
  2. sys_dict
    • 描述: 字典表。
    • 备注: 存储系统字典数据。
  3. sys_menu
    • 描述: 菜单表。
    • 备注: 存储系统菜单信息。
  4. sys_role
    • 描述: 角色表。
    • 备注: 存储系统角色信息。
  5. sys_role_menu
    • 描述: 角色-菜单关联表。
    • 备注: 存储角色与菜单的关联信息。
  6. sys_user
    • 描述: 用户表。
    • 备注: 存储系统用户信息。

应用相关表

  1. ydd_adming
    • 描述: 应用管理表。
    • 备注: 存储应用管理信息。
  2. ydd_advpos
    • 描述: 广告位置表。
    • 备注: 存储广告位置信息。
  3. ydd_article
    • 描述: 文章表。
    • 备注: 存储文章信息。
  4. ydd_cate
    • 描述: 分类表。
    • 备注: 存储分类信息。
  5. ydd_link
    • 描述: 链接表。
    • 备注: 存储链接信息。
  6. ydd_tag
    • 描述: 标签表。
    • 备注: 存储标签信息。
  7. ydd_user
    • 描述: 用户表。
    • 备注: 存储用户信息。
  8. ydd_user_data
    • 描述: 用户数据表。
    • 备注: 存储用户的具体数据信息。

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

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

相关文章

什么是生成式AI?

生成式AI&#xff08;Generative AI&#xff09;是一类利用机器学习和人工智能技术来生成内容的系统。这些系统可以创建文本、图像、音乐、视频等各种类型的内容。生成式AI通过学习大量的数据来理解和模仿人类的创作过程&#xff0c;从而生成新的、原创的内容。以下是生成式AI的…

创建App

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在Django项目中&#xff0c;推荐使用App来完成不同模块的任务&#xff0c;通过执行如下命令可以启用一个应用程序。 python manage.py startapp app…

RT-Thread的Finsh实现学习

学习原因 工作中&#xff0c;使用同事开发的调试软件&#xff0c;输入参数打印的函数名就可以打印参数&#xff0c;但看不到代码实现&#xff0c;只能用自己微薄的知识积累去猜一下&#xff0c;之前尝试过&#xff0c;专门写一个函数&#xff0c;去解析编译生成的map文件&#…

名侦探李先生第一话:谁是真正的凶手(只出现一次的数字相关题解(力扣)+位操作符回忆)

引子&#xff1a;我们在之前的案子中破解过基础的单身狗问题&#xff0c;那面对更有挑战的案子&#xff0c;且看李先生如何破局&#xff0c;那下凶手&#xff01; 复习&#xff1a; 1&#xff0c;位操作符&#xff1a; 正整数原&#xff0c;反&#xff0c;补码都相同 首位是…

RocketMQ如何添加JVM监控

这里是小奏,觉得文章不错可以关注公众号小奏技术 JVM监控选型 本次JVM监控我们采用prometheus官方提供的jmx_exporter来实现 RocketMQJVM开发 整体目录 1. 新增agent目录 我们在distribution目录新增一个agent模块&#xff0c;然后添加两个文件 jmx_prometheus_javaagent-…

NtripShare2024年第二季度主要技术进展

NtripShare Cloud GNSS解算云平台方面 1、解算引擎增加根据卫星多路径效应自动剔除卫星的算法。 2、解算引擎增加解算时间段限制&#xff08;发现贵州某地在晚12点周期性效果变差&#xff09;。 3、增加2000坐标至地方坐标系转换的支持(七参数、四参数、TGO高程拟合&#x…

高性能STL库 EASTL 、高性能JSON库

GitHub - electronicarts/EASTL: EASTL stands for Electronic Arts Standard Template Library. It is an extensive and robust implementation that has an emphasis on high performance. 兄弟们&#xff0c;对STL要求性能高的可以试试这个EASTL库&#xff01;&#xff01…

原神数据库实训存储过程

原神数据库存储过程 user表存储过程 drop procedure if exists insert_user; DELIMITER $$ CREATE PROCEDURE insert_user(in userName VARCHAR(255), IN weapon_type INT,IN dendro VARCHAR(255), in rarity int,in user_level int ) BEGIN if user_level>90 OR user_lev…

[数据集][目标检测]棉花检测数据集VOC+YOLO格式389张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;389 标注数量(xml文件个数)&#xff1a;389 标注数量(txt文件个数)&#xff1a;389 标注类别…

Python Selenium 定位有空格的元素

参考&#xff1a; seleniumpython 自动化——class定位&#xff1a;class属性有空格 https://blog.csdn.net/yxxxiao/article/details/96282145seleniumpython 定位带空格的class属性 https://blog.csdn.net/sinat_34209942/article/details/81127486css定位 1.css来定位class属…

办理北京公司注册地址异常变更要求和流程

在北京注册公司时选择注册地址是非常重要的一环&#xff0c;注册地址不仅体现在营业执照上&#xff0c;在网上也有公示信息&#xff0c;一般选用的是商用地址和商住两用地址&#xff0c;在公司经营过程中&#xff0c;因为经营需要变更注册地址&#xff0c;也要依法变更&#xf…

差分GPS原理

双差RTK&#xff08;Real-Time Kinematic&#xff09;算法是基于差分全球卫星导航系统&#xff08;GNSS&#xff09;技术的一种高精度定位方法。它利用至少两个接收机&#xff08;一个为基站&#xff0c;其他为移动站&#xff09;接收自同一组卫星的信号来实现精确测量。双差处…

低价可转债崩盘,发生了什么?

下跌不在于“出库”&#xff0c;甚至不在于“风险”。问题更多在于交易层面&#xff0c;何时能积聚更多的左侧资金并成功过渡至右侧。 低价券怎么了&#xff1f; 如果说6月初主要是小微盘品种的退市风险&#xff0c;后来是一些评级下调的品种&#xff0c;到本周&#xff0c;已…

ONLYOFFICE 桌面编辑器 8.1重磅来袭:全新功能提升您的办公效率

文章目录 前言ONLYOFFICE 桌面编辑器8.1一、PDF编辑&#xff1a;告别“头痛”时刻二、幻灯片版式&#xff1a;秒变“设计大师”三、无缝切换&#xff1a;办公界的“快速通道”四、语言支持&#xff1a;全球通吃的“翻译官”五、 隐藏“连接到云”板块&#xff1a;摆脱“云”的束…

26届软件工程生大二末的学期总结

一、前言&#x1f680;&#x1f680;&#x1f680; ☀️ 要不断的、反复的&#xff0c;爱上这个普通的自己。 本文简介&#xff1a;本人是大二软件工程专业&#xff0c;大二即将结束步入大三&#xff0c;这篇文章作为我的个人小笔记&#xff0c;只想在这里记录当下的心情与学习…

养老金干货大集锦

城乡居民养老保险待遇的领取条件是什么&#xff1f; 参加城乡居民养老保险的人员&#xff0c;同时满足三个条件可以按月领取城乡居民养老保险待遇&#xff1a; 一是年满60周岁&#xff1b; 二是未领取其他基本养老保险待遇&#xff1b; 三是缴费满15年&#xff0c;但在本市…

MySQL之可扩展性(一)

可扩展性 概述 有些应用仅仅适用于一台或少数几台服务器&#xff0c;那么哪些可扩展性建议是和这些应用相关的呢&#xff1f;大多数人从不会维护超大规模的系统&#xff0c;并且通常也无法效仿在主流大公司所使用的策略。选择一个合适的策略能够大大地节约时间和金钱。 MySQL…

图片转pdf,图片转pdf在线转换,在线图片转pdf

图片转PDF&#xff0c;听起来似乎是一个简单的操作&#xff0c;但实际上&#xff0c;它涉及到许多细节和技巧。有时候我们需要将图片转换为PDF格式&#xff0c;以便于分享、打印或保存。那么&#xff0c;如何将图片转换成PDF呢&#xff1f;接下来&#xff0c;我将为您详细介绍几…

【产品经理】订单处理9-台账库存管理

在订单处理过程中&#xff0c;台账库存的具体设计怎么做&#xff1f; 在订单处理过程中&#xff0c;分配仓库成功后要扣除仓库库存并计算商品缺货情况&#xff0c;仓库库存就是台账库存。 1&#xff0c;台账库存是针对某个仓库的库存&#xff0c;且台账库存只计算此商品SKU的库…

如何通过JDBC获取数据库连接 , 实现对单表数据增、删、改 ,实现对单表数据查询以及根据别名查询处理结果集扩展

1、获取连接 能够通过JDBC获取数据库连接 讲解 API介绍 java.sql.DriverManager类中有如下方法获取数据库连接 static Connection getConnection(String url, String user, String password) 连接到给定数据库 URL &#xff0c;并返回连接。 参数说明 String url&#x…