2.1.建立其它子Module

父项目上右键,选择 New... --> Other...

在 Select a wizard 窗口中找到 Maven 下的 Maven Module,选中后点击 Next 。

在 New Maven Module 窗口中勾选 Create a simple project.输入项目名称,点击 Next  按钮。

【建议】项目名称起名规范,如果是公用的,即该模块也可以在其它项目中使用,以 pub- 为前缀,如果不是,以父项目名称加 - 为前缀,如:union-task

输入子模块相关信息后,再点完Finsh。

2.2.建立配置文件

在resoutce文件夹下建立 application.xml文件,内容如下:


server:
  port: 18851
spring:
  application:
    name: pub-ip-query
  messages: 
    basename: i18n.messages
#  datasource: 
#    driver-class-name: com.mysql.cj.jdbc.Driver
#    url: jdbc:mysql://localhost:3306/jyedu?useSSL=false&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
#    username: root
#    password: 
#  jpa: 
#    generate-ddl: false
#    hibernate: 
#      ddl-auto: none
#      naming: 
#        physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
#    show-sql: true
#    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
  jackson: 
    time-zone: GMT+8
    serialization: 
      indent-output: true
    #日期格式化
    date-format: yyyy-MM-dd HH:mm:ss
    defaultPropertyInclusion: NON_EMPTY
  cloud: 
    nacos: 
      discovery: 
        server-addr: 192.168.6.31:8848 #Nacos服务注册中心地址
        namespace: public
        username: nacos
        password: nacos
      config: 
        server-addr: 192.168.6.31:8848 #Nacos作为配置中心地址

登录 Nacos ,修改 gateway.yml。每增加一个子模块,就增加一个 id 块。如下面的配置,增加了 union-task 子模块。注意格式和对齐。复制修改即可


spring:

  cloud: 
    gateway:
      routes:
      - id: pub-ip-query
        predicates:
        - Query=ip
        - Path=/pub-ip-query/**
        uri: lb://pub-ip-query
        filters:
        - StripPrefix=1
      - id: union-task
        predicates:
        - Query=ip
        - Path=/union-task/**
        uri: lb://union-task
        filters:
        - StripPrefix=1

2.3 编写业务代码

2.4 布署

此时在开发环境应可以直接运行,nacos也应能看见服务上线。

如果想进行服务器布署,参考上一篇的方法,生成jar上传到服务器上运行即可。我们可以把下面这个目录复制一份。


 更换 pub-ip-query 下的jar文件,并且修改 bin/startup.sh 和 bin/shutdown.sh 中的路径。


shutdown.sh同样修改一下

再根据需要修改 application.yml文件(必须把端口号和应用名称改掉)。


如果有bootstrap,比如连接了数据库,使用了jpa,还需建立bootstrap.yml文件。


spring:
  cloud:
    nacos:
      config:
        extension-configs:
        - data-id: com.lerx.unaid.gateway.yml
          refresh: true
        file-extension: yaml
        refresh-enabled: true
        server-addr: 192.168.6.31:8848
      discovery:
        server-addr: 192.168.6.31:8848
     


【提示】最后说明一下为什么命名要有一定的规律。

在服务器上布署成启动服务时,可能会有很多很多子服务,有时很难查看。如果我们命名规范的话,可以采用ls命令一看子找出自己的这些服务。如下面的的服务,当时就是以misrv-为前缀的,一个命令就能把所有的相关服务都找出来了。

ls /usr/lib/systemd/system/mi*