Gradle:'无法使用Local Dynamodb对不存在的表执行操作'

时间:2016-10-29 18:13:14

标签: java gradle amazon-dynamodb

我有一个Java桌面Web应用程序,它使用两个Dynamodb表构建和运行,不知何故,其中一个表(Customers)被创建,而另一个(FoodItems)则没有。当我尝试通过API访问FoodItems时,我得到一个例外:tempo。当我尝试在JUnit测试期间访问FoodItems时,同样的事情:Message::where('job_id','=',3) ->distinct() ->count();

我知道为什么。这是因为从未创建FoodItems表。但我无法弄清楚在哪里或如何创建它,我甚至不确定如何创建Customers表。

我正在git repository使用此this tutorial。我刚刚复制了类和JUnit测试以添加一个FoodItems表。该项目构建得很好,但如果我转到<a class="panel-link" ...> <div class="panel panel-default"> <div class="panel-body"> ... </a> ... <a class="#" ...> ... </div> </div> </a> ,我会得到上面的例外...它特别发生在JUnit测试中的Cannot do operations on a non-existent table行。

如果表尚不存在,如何在应用启动时创建表?

1 个答案:

答案 0 :(得分:1)

我为DBInitializer创建了一个接口,允许我创建抽象类,如CustomerDBInitializer,FoodItemDBInitializer等。这导致了问题。我认为根本原因是因为我使用Spring和带有接口的@PostConstruct注释器。