样例说明

通过本样例,您可以了解:

  1. 如何与Spring Boot集成

环境准备

您需要:

  1. 用于运行程序的IDE(集成开发环境),比如IntelliJ IDEA 或其类似工具;
  2. Java™ Development Kit (JDK),需要JDK 8及以上版本
  3. 已经完成Nacos安装,并能正常运行
  4. 已经完成 Quickstart Guide 样例

版本依赖

<dependency>
      <groupId>org.hiforce.lattice</groupId>
      <artifactId>lattice-model</artifactId>
      <version>1.0.13</version>
</dependency>
<dependency>
      <groupId>org.hiforce.lattice</groupId>
      <artifactId>lattice-runtime</artifactId>
      <version>1.0.13</version>
</dependency>

Step 1:定义Spring Boot启动类

@Configuration
@SpringBootApplication
public class LatticeSpringSampleStarter {
    public static void main(String[] args) {
        SpringApplication.run(LatticeSpringSampleStarter.class, args);
    }
}

这里没啥特别的,需要注意的是。 Lattice的初始化,要在Spring Boot容器启动完成之后再初始化。所以,可以看Step 2,我们写一个类,实现 CommandLineRunner 接口。

Step 2:初始化Lattice

定义 LatticeInitConfig 并让它实现 CommandLineRunner接口,如下:

@Component
public class LatticeInitConfig implements CommandLineRunner {
    @Override
    public void run(String... args) throws Exception {
        Lattice.getInstance().setSimpleMode(true);//no business config file, simple mode.
        Lattice.getInstance().start();
        System.out.println(">>> Lattice started!");
    }
}

Step 3:写一个SpringMVC Controller,调用扩展点

@RestController
public class SampleRestController {

    @RequestMapping("/invoke")
    public String invokeExtension() {
        return LatticeQuickStart.doBusinessA() + "</BR>" + LatticeQuickStart.doBusinessB();
    }
}

启动之后,我们在浏览器中打开 http://localhost:8080/invoke , 可以看到如下结果:

样例代码URL

可以访问 https://github.com/hiforce/lattice-sample/tree/main/lattice-spring-sample 获取本样例代码。