# general-colud
**Repository Path**: coding.songjh/general-colud
## Basic Information
- **Project Name**: general-colud
- **Description**: general-colud项目基于spring cloud基础搭建的一个简易框架,在此基础上准备整合Mybatis持久层框架、RabbitMQ消息中间件、Redis缓存框架等,后台页面可能使用VUE或者是AngularJS2进行开发,目前还处于开发阶段。
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2018-01-28
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
一、项目规划介绍:
1、相关技术:
后端:
(1)spring-boot
(2)spring-cloud
(3)mybatis
(4)rabbitmq
(5)mysql
(6)jdk1.8
(7)redis
(8)RESTEasy
2、功能:
(1)单点登录
(2)服务注册中心
(3)权限管理中心
(4)网关负载中心
(5)对外接口服务中心
(6)配置中心
(7)日志监控中心
(8)消息管理中心(包括:邮件、短信)
(9)文件服务中心
(10)缓存中心
二 开发规范
端口设计:
1、注册中心(general-center)的端口以9开头
2、服务提供者(admin-server)、服务消费者(admin-consumer)的端口以8开头
3、general-api服务端口以7开头
4、general-config服务端口以6开头
5、general-common公共服务模块
对象说明:
1、PO对象:持久化对象数据,与数据库中的字段意义对应
2、BO对象:业务对象,业务逻辑过程中用到的对象
3、DTO对象:数据传输对象,用于服务之间数据的传输
三、项目部署流程
1、启动注册中心general-center,访问 http://localhost:9001 即可打开注册中心地址;
(`问题:注册中心地址(eureka.client.service-url.defaultZone)的值最后必须是eureka,否则服务中心配置注册中心地址后,找不到注册中心`)
2、启动配置服务中心general-config
配置git时,如果Git仓库为公开仓库,可以不填写用户名和密码,如果是私有仓库需要填写
将admin-server作为配置读取的客户端,需要注意`spring.cloud.config.discovery.serviceId`配置的值必须是这个值必须是general-config
其次,git仓库中的配置文件必须命名为admin-server-{profile}.properties
3、启动服务提供者general-admin服务中心下的服务admin-server,然后看到如下内容,说明服务admin-server注册到了注册中心
| Application | AMIs | Availability Zones | Status |
| -------- | -----: | :----: | :----: |
| ADMIN-SERVER | n/a(1) | (1) | UP (1) - DESKTOP-5TNQG42:admin-server:8001 |
5、服务消费者 admin-consumer,看到结果如下,说明启动成功,访问 http://localhost:8002/hello?name=general 查看返回结果
| Application | AMIs | Availability Zones | Status |
| -------- | -----: | :----: | :----: |
| ADMIN-SERVER | n/a(1) | (1) | UP (1) - DESKTOP-5TNQG42:admin-server:8001 |
| ADMIN-CONSUMER | n/a(1) | (1) | UP (1) - DESKTOP-5TNQG42:admin-consumer:8002 |
6、遇到的坑
(1)admin-server的`eureka.client.service-url.defaultZone`配置必须放到bootstrap.properties里面,放到application.properties,总是会将服务注册到
http://localhost:8761/eureka上去,但是又没有服务中心(http://localhost:9001/eureka)对接到这个地址,所以报错链接不上;不知道为什么会这样。
三 redis windows环境安装
1、下载redis压缩包,下载地址:https://github.com/MSOpenTech/redis/releases
2、解压后,使用cd命令切换目录到 redis文件目录下 运行 redis-server.exe redis.windows.conf
3、新开一个cmd窗口,cd到redis目录,运行 redis-cli.exe -h 127.0.0.1 -p 6379,设置键值对 set myKey abc 取出键值对 get myKey
4、pom文件中引入相应的jar
```
org.springframework.boot
spring-boot-starter-data-redis
org.redisson
redisson
1.0.2
```
5、启动admin-server服务,测试redis代码是否生效
四、整合RESTEasy
1、在pom文件中引入依赖
```
com.paypal.springboot
resteasy-spring-boot-starter
2.3.4-RELEASE
```
2、在相应的resource中使用RESTEasy的注解
五、安装MYSQL windows环境安装
1、下载mysql: https://dev.mysql.com/downloads/file/?id=471661
2、双击下载好的文件进行安装mysql-installer-community-5.7.19.0.msi
3、root用户设置密码:general-cloud;管理员用户名和密码:admin/admin