新建模块
结构查看
新增子模块,按照若依赖的约定,避免后续出现问题,当然一通百通,也可以按照自己的思路配置,修改对应的配置即可。
后端项目结构如下,通过观察,我们需要新增自己的模块在ruoyi-modules下面新增模块
com.ruoyi
├── ruoyi-ui // 前端框架 [80]
├── ruoyi-gateway // 网关模块 [8080]
├── ruoyi-auth // 认证中心 [9200]
├── ruoyi-api // 接口模块
│ └── ruoyi-api-system // 系统接口
├── ruoyi-common // 通用模块
│ └── ruoyi-common-core // 核心模块
│ └── ruoyi-common-datascope // 权限范围
│ └── ruoyi-common-datasource // 多数据源
│ └── ruoyi-common-log // 日志记录
│ └── ruoyi-common-redis // 缓存服务
│ └── ruoyi-common-security // 安全模块
│ └── ruoyi-common-swagger // 系统接口
├── ruoyi-modules // 业务模块
│ └── ruoyi-system // 系统模块 [9201]
│ └── ruoyi-gen // 代码生成 [9202]
│ └── ruoyi-job // 定时任务 [9203]
│ └── ruoyi-file // 文件服务 [9300]
├── ruoyi-visual // 图形化管理模块
│ └── ruoyi-visual-monitor // 监控中心 [9100]
├──pom.xml // 公共依赖
新建module
ruoyi-modules右击,new->module
输入模块名,不选择父依赖,手动添加
SpringBoot版本不要太高,高版本与jdk1.8不适配
修改模块名,和其他服务一样 ruoyi-moduls-business
修改成功后的样子
添加依赖:
去ruoyi-system模块的pom.xml复制依赖,只需要修改 和即可,导入后刷新maven会有一个错误,是因为我们还没有添加到ruoyi-moduls中
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-modules</artifactId>
<version>3.6.2</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<!--修改部分-->
<artifactId>ruoyi-modules-business</artifactId>
<description>
ruoyi-modules-business业务模块
</description>
<!--修改部分-->
<dependencies>
<!-- SpringCloud Alibaba Nacos -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- SpringCloud Alibaba Nacos Config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!-- SpringCloud Alibaba Sentinel -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
<!-- SpringBoot Actuator -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- Swagger UI -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.fox.version}</version>
</dependency>
<!-- Mysql Connector -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- RuoYi Common DataSource -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common-datasource</artifactId>
</dependency>
<!-- RuoYi Common DataScope -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common-datascope</artifactId>
</dependency>
<!-- RuoYi Common Log -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<!-- RuoYi Common Swagger -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common-swagger</artifactId>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
在父依赖中添加当前模块,原来模块的错误解决!
分级目录com.ruoyi.business 下的启动类复制ruoyi-system的,改一下名字
【注意这里的目录要和后面代码生成的路径对应】
复制ruoyi-system模块中的resource下的两个文件bootstrap.yml和logback.xml(可选),到相应的路径下面。
修改前:
修改后:
logback.xml:修改日志存放地址
bootstrap.yml : 修改配置:tomcat端口号,修改应用名称
查看配置,注意这里的约定,约定大于配置!约定大于配置!约定大于配置!
nacos配置服务
1、配置模块服务
启动nacos服务,地址,查看配置列表
选中ruoyi-system-dev.yml,进行克隆配置,修改data id名字!约定大于配置,如果前面的bootstrao.yml修改了配置,这里也需要对应的修改
克隆成功!
点击编辑,修改数据库链接对象
若是在ruoyi-cloud里建立数据库则无需修改:
如果新建了数据库则:
修改mybatis包扫描路径,这里要对应我们之前建包时候的路径
其他不变,发布即可,注意文件的类型是yml和bootstrap.yml中约定的一样,如果改变这里也需要对应的改变!
2、配置网关服务
参照之前的服务模块,这里lib配置服务,path配置路径,发布重启服务即可。
启动服务
创建controller目录新建一个TestController来测试服务是否能用
package com.ruoyi.business.controller;
import com.ruoyi.common.core.web.controller.BaseController;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 参数配置 信息操作处理
*
* @author ruoyi
*/
@RestController
public class TestController extends BaseController {
@RequestMapping("/test")
public String test() {
return "业务模块测试接口";
}
}
来到RuoYiOrderApplication启动类,启动即可,启动完了自动添加到service中,下次可以直接启动
Nacos里也有相应服务信息了
测试接口访问:
通过8080访问需要令牌,可以在配置里设置白名单
再次访问即可
参考:
ruoyi-cloud新建子模块
https://blog.csdn.net/m0_55675518/article/details/126874317
ruoyi-cloud代码生成(跨数据库)
https://blog.csdn.net/m0_55675518/article/details/126880722