MyCat - 环境搭建 - 基础工程搭建 | 学习笔记

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 快速学习 MyCat - 环境搭建 - 基础工程搭建

开发者学堂课程【全面讲解开源数据库中间件 MyCat 使用及原理(四):MyCat - 环境搭建 - 基础工程搭建】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/758/detail/13309


MyCat - 环境搭建 - 基础工程搭建

内容介绍:

一、搭建案例环境

二、搭建基础工程

 

一、搭建案例环境

1、先搭建父工程

工程名: v_parent

通过父工程,进行统一管理依赖的版本。

2、其次搭建案例环境

(1):首先创建一个空 project。

Project name: v_shop_project

(2):其次在工程 project 中创建一个新Module,之后选择 Maven

Groupld: cn.itcast

Artifactid: v_parent

(3):点击 next

(4):最后点击 Finsh

第一个父工程就创建好了,父工程的功能就是统一管理依赖的版本,所以同时删除左侧屏幕显示的 src 目录。

3、在 pom.xml引入依赖

<!-- spring Boot 项目需要集成自父工程-->

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.1.4.RELEASE</version>

</parent>

//这个指定 v_parent 的父是 spring-boot-starter-parent

<properties>

skipTests>true</skipTests>

</properties>

//这个指定构建项目时要跳过单元测试。

<!--依赖包-->

<dependencies>

<!--测试包-->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

</dependencies>

//引入一个测试依赖:  spring-boot-starter-test

(因为所有工程当中都需要测试依赖)

<dependencyManagement>

<dependencies>

<dependency>

<groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-dependencies</artifactId>

<version>Greenwich.SRI</version>

<type>pom</type>

<scope>import</scope>

</dependency>

//通过 <dependencyManagement> 指定依赖版本

//首先第一个依赖版本是 spring-cloud-dependencies 相关依赖,使用 Greenwich.SR1 这个版本的依赖。

<!--MySQL 数据库驱动-->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.47</version>

</dependency>

// MySQL 数据库驱动依赖

<!--mybatis 分页插件-->

<dependency>

<groupId>com.github.pagehelper</groupId>

<artifactId>pagehelper-spring-boot-starter</artifactId>

<version>1.2.3</version>

</dependency>

// mybatis 分页插件的依赖

<!--json 格式转换-->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>fastjson</artifactId>

<version>1.2.51</version>

</dependency>

// json 格式转换的依赖

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<version>1.18.6</version>

</dependency>

</dependencies>

</dependencyManagement>

</project>

// lombok 依赖

以上就是导入的依赖,通过父工程进行统一的依赖管理。

 

二、搭建基础工程

1、搭建 v_model

(1)新建一个 Module

Artifactld: v_model

Module.name: v_model

该基础工程存放的是与数据库对应的实体类。

在创建成功的 v_model ,只需要在 v_model 导入一项依赖。导入 lombok 依赖,不需要指定版本。(因为 v_parent 父工程中已经指定版本号,<Version>1.18.6</Version>)

(2)导入 model 实体到目录:

在 v_model 下的 java 创建一个 Newpackage, 创建成功之后,把案例资料里的 model 实体类导入进目录。直接拷贝到 model 的这个文件下的路径(如下所示):

image.png

(3)再新建一个 newpackage

image.png

这个实体类并不是与数据库对应的,这是一个组合实体类。

下面对 model 里面的 TbAreas 文件做简单说明:

在实体类声明的时候用到了两个注解, 分别是 Data、NoArgsConstrctor,这两个注释都是通过 lombok 启动的,其中 Data 可以简化 POJO 中关于 setter、Getter、ToString、、、、的编写,如果没有 Data 注解,需要在文件里进行补充setter、Getter、ToString、、、、。然而 NoArgsConstrctor 可以进行无参数构造,但可以省略不写,原因在于这个实体类默认只有一个无参构造。在其它的实体类,也是这两个注解,这样 v_model 实体模型创建完成。

2、搭建通用组件工程 v_common

(1)新建一个 Module

Artifactld: v_common

Module.name: v_common

该基础工程中存放的是通用的组件及工具类,比如分页实体类,结果实体类,状态码等。

(2)新建一个目录

image.png

(3)新建一个 New Package

image.png

(4)最后再新建一个目录

image.png

其中目录里的 entity 文件存放通用组件, util 文件存放工具。

(5)导入 common 组件到目录:

把案例资料里的 common 组件下的 entity 里的通用组件拷贝到目录中的 entity 下,以及 util 里的通用工具类拷贝到目录中的 util 下。

简单了解 entity 里的组件,包括:

Page: 分页组件

PageResult: 分页结果返回的对象

Result: 增删改查返回的一个结果。(包括当前操作是否成功,以及返回码、返回消息。返回数据的内容)

StatusCode: 封装的返回状态码。(状态码不足可以适当补充)

以上就是 v_common 组件通用工程所存储的组件,当要进行具体使用,再进行具体说明。

3、搭建 v_feign_api

(1)新建一个 Module

Artifactld: v_feign_api

Module.name: v_feign_api

该基础工程中主要存放的是 Feign 与远程调用的客户端接口。

(2)引入对应依赖

这个工程需要引入对应的依赖。

<dependencies>

<!--web 起步依赖-->

<dependency>

<groupId>org.springframenwork.boot</groupId>

<artifactId>spring-boot-starter-openfeign</artifactId>

</dependency>

<!--Feign 起步依赖-->

<dependency>

<groupId>org.springframework.cloud.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

<dependency>

<groupId>cn.itcast</groupId>

<artifactId>v_common</artifactId>

<version>1.0-SNAPSHOT</version>

</dependency>

<dependency>

<groupId>cn.itcast</groupId>

<artifactId>v_model</artifactId>

<version>1.0-SNAPSHOT</version>

</dependency>

//首先 spring-boot-starter-web 用于封装一些注解

//其次 spring-cloud-starter-openfeign 是使用 openfeign 中的注解

//再其次 当工程可能需要一些通用组件,依赖 v_common

//最后包括实体模型依赖 v_model

以上就是搭建基础工程的全部内容,主要搭建 v_common (存放通用组件) 、v_model (存放与数据库对应的实体模型)、v_feign_api ( c 存放远程调用的客户端)。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
存储 安全 Linux
TiDB安装准备工作与基础环境搭建
【2月更文挑战第28天】TiDB安装前需满足硬件(足够CPU、内存、存储)和软件(Linux,推荐CentOS 7+)要求,确保网络稳定性。配置包括设置唯一主机名,关闭防火墙和SELinux,同步NTP,创建TiDB用户和目录。下载官方安装包并验证后,解压,配置环境变量,初始化集群,启动服务并验证运行状态。稳定的环境对发挥TiDB性能至关重要。
|
Java 应用服务中间件 Apache
企业实战(2) 项目环境搭建之Tomcat部署
企业实战(2) 项目环境搭建之Tomcat部署
|
2月前
|
监控 Java 应用服务中间件
部署tomcat部署实战案例
本文是关于Tomcat部署实战案例的教程,包括通过yum和二进制方式部署Tomcat的详细步骤,以及如何监控Tomcat服务。
210 84
部署tomcat部署实战案例
|
17天前
|
关系型数据库 MySQL Linux
docekr环境搭建配置!!!
本文介绍了Docker的安装部署及基本操作,包括使用国内源安装Docker CE、配置Linux内核流量转发、启动第一个容器、初体验Docker玩法、镜像命令、镜像详解、镜像分层结构、镜像实践操作、容器管理实践等内容。通过具体示例,如下载并运行MySQL、Redis、Nginx和WordPress镜像,帮助读者快速掌握Docker的基本使用方法。
42 5
|
6月前
|
NoSQL Dubbo Java
day01—项目介绍与环境搭建
day01—项目介绍与环境搭建
202 0
|
关系型数据库 MySQL Linux
零基础搭建Mycat环境
零基础搭建Mycat环境
105 0
|
运维 Kubernetes 应用服务中间件
k8s 基础&环境搭建
k8s 基础&环境搭建
214 0
k8s 基础&环境搭建
|
数据库连接 PHP 数据库
Laravel框架简介与环境搭建
Laravel框架简介与环境搭建
176 0
|
存储 移动开发 小程序
uniapp环境搭建以及基础配置详解
安装编辑器 HbuilderX(HbuilderX 是通用的前端开发工具,但为 uni-app 做了特别强化)。 下载 APP 开发板,可开箱即用。 安装微信开发者工具。
788 0
uniapp环境搭建以及基础配置详解
|
前端开发 NoSQL Java
MyCat-环境搭建-工程层级及架构介绍 | 学习笔记
快速学习 MyCat-环境搭建-工程层级及架构介绍
MyCat-环境搭建-工程层级及架构介绍 | 学习笔记
下一篇
无影云桌面