IntelliJ IDEA 10.を使用して、データベースモデルからエンティティ(POJO)を生成する方法はありますか。IntelliJで「データソース」を作成しますが、POJOを生成する方法はわかりません。
UPDATE:
IntelliJ 16では、この機能が実装されました。手順は次のとおりです。
1。 データベースコンテキストメニューの表示
2。スクリプト化された拡張機能
3。 POJOを生成する
詳細はこちらをご覧ください:
機能要求:プレーンJDBC開発者向けに「データベーススキーマからクラスを生成」を許可
まず、Hibernateを使用していることをintelliJに伝える必要があります(テーブルのorm pojoが必要かどうかを推測します)
これで、休止状態の設定ファセットをセットアップしたので、pojoを抽出できます。
デフォルト Scripted ExtensionsGenerate POJOs.groovy
は、アンダースコア(非常に一般的)を含むテーブルを処理する場合、あまり良くありません。
だから私はいくつかの変更を行います。
メインコード
def calcFields(DasObject table) {
DasUtil.getColumns(table).reduce([]) { fields, col ->
def spec = Case.LOWER.apply(col.dataType.specification)
def typeStr = typeMapping.find { p, t -> p.matcher(spec).find() }.value
fields += [[
name : javaName(col.name, false),
type : typeStr,
annos: """
/**
* $col.comment
*/"""]]
}
}
static String javaName(String str, boolean capitalize) {
def s = CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.UPPER_CAMEL, str);
capitalize || s.length() == 1 ? s : Case.LOWER.apply(s[0]) + s[1..-1]
}
ここで要点全体を見つけることができます https://Gist.github.com/aristotll/ad799a7462e8b705b26103944cca24a6