以一个官方的例子,开启lagom的学习之旅。

1:   git clone https://github.com/lagom/activator-lagom-java-chirper.git

2:   下载后进入目录,运行mvn lagom:runAll。

Lagom学习 (二)

 3: 浏览器输入:localhost:9000

Lagom学习 (二)

4:  模块:

  Chirp service: 负责存储聊天,提供存储接口服务。
  Friend service: 负责用户存储,管理朋友关系。
  Activity Stream service: 为聊天提供流数据的支持,依赖于 Chirp与Friend 服务。
  Front-End service: 提供前台用户UI。

5: 

  • An api project:   that contains a service interface through which consumers can interact with the service.
  • An impl project:  that contains the service implementation.
ActivityStreamService.java
/*
 * Copyright (C) 2016 Lightbend Inc. <http://www.lightbend.com>
 */
package sample.chirper.activity.api;

import sample.chirper.chirp.api.Chirp;

import akka.stream.javadsl.Source;

import akka.NotUsed;
import com.lightbend.lagom.javadsl.api.ServiceCall;
import com.lightbend.lagom.javadsl.api.Descriptor;
import com.lightbend.lagom.javadsl.api.Service;
import static com.lightbend.lagom.javadsl.api.Service.*;

public interface ActivityStreamService extends Service {

  ServiceCall<NotUsed, Source<Chirp, ?>> getLiveActivityStream(String userId);

  ServiceCall<NotUsed, Source<Chirp, ?>> getHistoricalActivityStream(String userId);

  @Override
  default Descriptor descriptor() {
    // @formatter:off
    return named("activityservice").withCalls(
        pathCall("/api/activity/:userId/live", this::getLiveActivityStream),
        pathCall("/api/activity/:userId/history", this::getHistoricalActivityStream)
      ).withAutoAcl(true);
    // @formatter:on
  }
}
View Code

相关文章:

  • 2021-06-14
  • 2022-01-27
  • 2021-12-31
  • 2022-12-23
  • 2021-09-13
  • 2021-06-28
  • 2021-11-05
  • 2022-01-05
猜你喜欢
  • 2021-07-26
  • 2021-11-14
  • 2021-08-24
  • 2021-08-11
  • 2022-02-04
  • 2021-11-13
  • 2021-11-07
相关资源
相似解决方案