小编Mic*_*ech的帖子

在Docker中启动并填充Postgres容器

我有一个包含Postgres数据库的Docker容器.它使用官方的Postgres图像,该图像具有在主线程上启动服务器的CMD条目.

我想RUN psql –U postgres postgres < /dump/dump.sql在开始收听查询之前通过运行来填充数据库.

我不明白Docker如何实现这一点.如果我RUN在CMD之后放置命令,它当然永远不会到达,因为Docker已经完成了对Dockerfile的读取.但是如果我把它放在它之前CMD,它将在psql甚至作为一个进程存在之前运行.

如何在Docker中预填充Postgres数据库?

database postgresql docker

41
推荐指数
3
解决办法
5万
查看次数

Java中最简单的方法是将String转换为UUID

如何从String生成有效的UUID?单独的字符串不是我正在寻找的.相反,我正在寻找类似哈希函数的东西,将任何String转换为有效的UUID.

java uuid

11
推荐指数
2
解决办法
2万
查看次数

DI在Scala与蛋糕模式

文章通过Scala的解释依赖注入Cake Pattern.

我对这种模式的好处的理解是,特征可以与(生产对测试)和静态检查混合在一起.

在Bonér先生的例子中,他列出了这个完成的(每个例子)代码:

UserRepositoryComponentUserServiceComponent

我根据我的理解添加了评论.

trait UserRepositoryComponent {
  val userRepository: UserRepository    // stand-alone component

  class UserRepository {      
    ...                      // actual implementation here
  }
} 
trait UserServiceComponent { 
  this: UserRepositoryComponent =>      //Requires a mixed-in UserRepo*Component

  val userService: UserService  

  class UserService {
    ...                      // actual implementation here
  }
}
Run Code Online (Sandbox Code Playgroud)

我的理解是,这Service取决于注射Repository成分.

出于生产目的,可以使用以下内容将"生产" Repository组件连接到UserServiceComponent:

object ComponentRegistry extends 
  UserServiceComponent with 
  UserRepositoryComponent 
{
  val userRepository = new UserRepository
  val userService = new …
Run Code Online (Sandbox Code Playgroud)

dependency-injection scala

3
推荐指数
1
解决办法
376
查看次数

Akka Ask模式的Timeout阻止代码执行

我刚开始学习Scala的Akka库.我遇到了使用Ask模式从Actor获取响应(就像启动一个线程来完成一些计算并获得结果).

下面是我的代码,其中我使用了Ask模式,其中Timeout阻止它执行.为什么?

import akka.actor._
import akka.routing._
import akka.util.Timeout
import akka.pattern.ask
import java.math.BigInteger
import java.time.LocalDate
import scala.concurrent.duration._
import scala.concurrent.Await
import scala.concurrent.Future
import scala.concurrent.ExecutionContext.Implicits.global 
import scala.util.{Success, Failure}


object Main extends App {

  val system = ActorSystem("listRetriever")
  val workerActor = system.actorOf(Props[Worker], "workerActor")
  val listRetriever= new listRetriever
  implicit val timeout = Timeout(10 seconds)

  val future = workerActor ? new Work(date, listRetriever)

  future onComplete {
    case Success(result: Result) => println(result.getList())
    case Failure(result) => println(result)
  }

  system.shutdown
}
Run Code Online (Sandbox Code Playgroud)

parallel-processing scala akka

1
推荐指数
1
解决办法
3794
查看次数

使用spray-json,Slick和PostgreSQL进行DateTime的Stack Overflow

希望你能帮我解决这个问题.使用Akka HTTP,Slick和PosgreSQL,我正在尝试实现一个公告板作为练习.您可以在这里找到它的最新版本以获得完整的图片.


我所拥有的,简而言之:

我有这样的表:

final class Posts(tag: Tag) extends Table[Post](tag, "POSTS") with CustomColumnTypes {
  def id = column[Long]("ID", O.PrimaryKey, O.AutoInc)
  def threadId = column[Long]("THREAD_ID")
  def secretId = column[String]("SECRET")
  def pseudonym = column[String]("PSEUDONYM")
  def email = column[String]("EMAIL")
  def content = column[String]("CONTENT")
  def created = column[DateTime]("CREATED")

final class Threads(tag: Tag) extends Table[Thread](tag, "THREADS") {
  def threadId = column[Long]("THREAD_ID", O.PrimaryKey, O.AutoInc)
  def subject = column[String]("SUBJECT")
Run Code Online (Sandbox Code Playgroud)

和域模型:

case class Post(
    postId: Option[Long] = None,
    threadId: Option[Long],
    secretId: String,
    pseudonym: String, …
Run Code Online (Sandbox Code Playgroud)

postgresql scala spray-json slick akka-http

1
推荐指数
1
解决办法
859
查看次数