我刚刚发现了Speedment,一个基于Java 8 Stream的OR / M库,并且不得不说我喜欢它的想法。没有更疯狂的配置或花费时间筛选900页的休眠文档以找到正确的方法来注释我的类:Speedment只是读取您的数据库,为您生成Java类并为您提供基于流的API来对它们运行DDL语句。邪恶的酷。
然而,最重要的一个障碍是似乎就像 使用Speedment UI来配置数据库连接一样。此外,文档似乎没有具体说明如何执行以下操作:
等。在GitHub上看,我似乎无法找到代码如何从UI连接在一起以生成配置对象。只是想知道是否有办法配置Speedment没有UI(可能通过JSON或YAML),如果有,可以使用哪些配置。
答案 0 :(得分:1)
可以在没有UI的情况下配置Speedment,但需要一些修改。基本上,要从数据库生成代码,您需要手动创建 speedment.json -file并指定要手动生成的模式。
pom.xml
- 文件和src/main/java
- 目录。)/src/main/json/speedment.json
{
"config" : {
"name" : "yourproject",
"packageName" : "com.yourcompany",
"packageLocation" : "src/main/java/",
"dbmses" : [{
"name" : "db0",
"typeName" : "MySQL",
"ipAddress" : "127.0.0.1",
"port" : 3306,
"schemas" : [{
"name" : "your_db_schema"
}]
}]
}
}
运行Maven目标:mvn speedment:reload -Ddbms.username=root -Dbms.password=password
(包含数据库的凭据)
最后,运行Maven目标:mvn speedment:generate
第一个目标连接到数据库并填写.json文件中任何缺少的配置详细信息。第二个目标生成.java代码。
要禁用特定表,请设置json-property" enabled"到false
。你也可以通过这种方式禁用单个列。
如果需要,您现在可以直接在.json文件中配置生成,然后重新生成。