搭建业务模块的简介
一般一个系统的用户管理,权限管理,角色管理都会放在这个system这个模块里面
搭建开始
选中自己的项目,新建一个一个模块,我这里命名为system模块,也就是系统模块,新建的普通的模块
这时就可以看见你的父工程的pom.xml多了一个模块名字,也就是刚刚自己搭建的一个系统模块
这里用到了git提交,新增了system系统模块,就不截图了
业务模块注册进Eureka注册中心去
步骤:
1.加入eureka clinet 客户端的依赖
2.新建一个启动类
3.在application.properties或者application.yml加入eureka.client.servers-url.defaltZont=eurek注册中心地址
4…在启动类上面加上@EnableEurekaClient注解
依赖
<!-- 将system 注册到 eureka 注册中心去 所以是client 客户端吗 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- web的依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
新增的Springboot启动类
package club.adger.system;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.core.env.Environment;
/**
* Created with IntelliJ IDEA.
*
* @Auther: Adger
* @Date: 2020/07/22/19:38
*/
@SpringBootApplication
@EnableEurekaClient
public class SystemApplication {
/**
* 注意这里导入的是slf4j的日志包
*/
private static final Logger LOG = LoggerFactory.getLogger(SystemApplication.class);
/**
* 优化后的启动函数
* LOG.info() 打印日志信息
* LOG.info("Eureka地址: \thttp://127.0.0.1:{}", env.getProperty("server.port"));
* 上面这行代码的 env.getProperty("server.port") 取得端口号
* @param args
*/
public static void main(String[] args) {
SpringApplication app = new SpringApplication(SystemApplication.class);
Environment env = app.run(args).getEnvironment();
LOG.info("启动成功!!");
// 注意修改 地址前面的模块名字
LOG.info("System地址: \thttp://127.0.0.1:{}", env.getProperty("server.port"));
}
}
复制上次在Eureka中搭建的配置文件一个日志文件一个配置文件,稍微修改就可以用了
application.properties
# 应用名字
spring.application.name=system
server.port=8001
# 指向注册中心的地址
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/
logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!--
修改一下路径 value 是日志输出的路径 不要使用绝对路径,不是每个电脑又D盘F盘什么的 日志输出根据你的项目路径输出的
如果你使用的时windows 就比如你的项目在 D盘 你的日志文件输出就在D盘开始
-->
<property name="PATH" value="/log/cource/system"></property>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<!--打印 年月日 时分秒%d{yyyy-MM-dd HH:mm:ss.SSS} 高亮显示 %highlight(%-5level) 控制台颜色 %blue(%-50logger{50}:%-4line) 日志信息 %msg%n</Pattern>-->
<Pattern>%d{ss.SSS} %highlight(%-5level) %blue(%-30logger{30}:%-4line) %msg%n</Pattern>
</encoder>
</appender>
<!-- 输出级别 TRACE_FILE 输出到文件里面去 -->
<appender name="TRACE_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${PATH}/trace.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${PATH}/trace.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<layout>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %-50logger{50}:%-4line %green(%-8X{UUID}) %msg%n</pattern>
</layout>
</appender>
<!-- 错误级别 -->
<appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${PATH}/error.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${PATH}/error.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<layout>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %-50logger{50}:%-4line %green(%-8X{UUID}) %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<root level="ERROR">
<appender-ref ref="ERROR_FILE" />
</root>
<root level="TRACE">
<appender-ref ref="TRACE_FILE" />
</root>
<root level="INFO">
<appender-ref ref="STDOUT" />
</root>
</configuration>
这时启动注册中心跟业务模块就会发现,已经注册进去
扩展问题
这里我以前写过一遍system模块,所以出现了一些小问题
解决办法,把.idea的配置文件夹跟.iml结尾的文件删除干净,不要把.git文件夹删除掉,我感觉应该是起冲突了