环境配置和项目准备
1.创建新的module
新建module的要求
初始依赖
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.4</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>2021.0.4</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
####默认自动选择了的依赖管理##########
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
2.git上传项目步骤
1
1
虚拟机不能ping通物理机原因,是因为物理机的防火墙
3.安装docker的mysql
项目用的是的5.7 ,但是报错启动不了 https://programmerah.com/error-mysqld-failed-while-attempting-to-check-config-how-to-solve-42570/
//创建实例并启动
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.16
//进入mysql
docker exec -it mysql mysql -uroot -p123456
//参数说明
-p 3306:3306://将容器的3306 端口映射到主机的3306 端口
-v /mydata/mysql/conf:/etc/mysql://将配置文件夹挂载到主机
-v /mydata/mysql/log:/var/log/mysql://将日志文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql/://将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=123456://初始化root 用户的密码
4.安装redis
设置redis 开机自启动 docker update –restart=always 容器id
5.数据库初始化
连接linux服务器之后,然后再导入sql即可,字符集选择utf8mb4
6.创建后台管理系统
加入renren-fast是一个轻量级的,前后端分离的Java快速开发平台,能快速开发项目并交付,clone下载后记得删除.git文件,在guli_mail加入renren-fast
在linux服务器加入数据库,并且修改数据库连接信息,就可以启动访问
上面配置的url无法访问,会出现报错
修改数据库的useSSL Secure Sockets Layer 安全套接字协议
#########################################################################################
如果MySQL的版本是5.7之后的版本必须要加上useSSL=false,
mysql5.7以及之前的版本则不用进行添加useSSL=false,会默认为false,
一般情况下都是使用useSSL=false,尤其是在将项目部署到linux上时要使用useSSL=false
useSSL=true:就是一般通过证书或者令牌进行安全验证
useSSL=false:就是通过账号密码进行连接
7.创建前端管理项目
使用renren-fast-vue开发,从gitee克隆项目把.git文件删除,在vscode打开后npm install 用npm run dev 启动项目 默认登录密码都是admin
8.用renren-generator代码生成器
为每个微服务生成基本的增删改查 ,git clone后删除.git文件
修改数据库配置连接 修改renren-generator的application.yml文件信息
修改renren-generator的generator.properties文件信息
修改完后启动 renren-generator的application
生成的main复制到对应的模块,此时需要建立一个公共的模块,其它模块都继承它
查看修改自动生成的包看有没有缺失啥的就补该依赖
#######################################################################################
下图生成为renren-generator 生成的文件夹目录结构,拷贝到gulimail-product的product下
新建的gulimail-common需要添加以下依赖以及它的文件包括
<dependencies> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.1</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.8</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore --> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpcore</artifactId> <version>4.4.15</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> </dependencies>
common的目录树
其它需要common的需要再各自pom文件添加
<dependency>
<groupId>com.atguigu.gulimail</groupId>
<artifactId>gulimail-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
9.整合mybatis-plus依赖到gulimail-product
1.导入依赖(在common已经导入)
2.配置
2.1 配置数据源
* 配置驱动(在common中增加mysql-connec-java的依赖) * 配置数据源 application.yml
2.2 配置mybatis-plus
* 在启动类使用mapperScan("com.atguigu.gulimail.product.dao")扫描实体类包 * 复杂sql时候,找到sql映射文件
测试启动 GulimailProductApplication.java 访问localhost:8080/product/brand/list
10.记录用renren-generator生成gulimail-member的代码
修改renren-generator的配置文件 appliaction.yml和generator.properties,找到对应的数据库
#\u4EE3\u7801\u751F\u6210\u5668\uFF0C\u914D\u7F6E\u4FE1\u606F
############################################generator.properties############################################
mainPath=com.atguigu
#\u5305\u540D
package=com.atguigu.gulimail
moduleName=member //修改这里
#\u4F5C\u8005
author=soup
#Email
email=[email protected]
#\u8868\u524D\u7F00(\u7C7B\u540D\u4E0D\u4F1A\u5305\u542B\u8868\u524D\u7F00)
tablePrefix=ums_ //修改这里
appliaction.yml
server:
port: 80
# mysql 主要修改了url对应数据库名
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
#MySQL配置
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.60.134:3306/gulimail_ums?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: 123456
下一步启动即可访问 localhost:80 下载代码 把main 拷贝到gulimail-member的main覆盖住
下面是中途点击生成出错,idm一闪而过没有浮停,窗口开太多的原因,点击任务栏idm手动下载,
中途出现了pom文件是橙色的,并且没有add as maven project,删除重新引入
访问随机一个url:http://localhost:8080/member/growthchangehistory/list