Article
Java Ebean によってデータベース テーブルとして自動的にマップされるクラスがあるとします。
このテーブルではRawSql
、多くの結合などを含む複雑なクエリになると SQL がより単純になるため、クエリを介してエントリを取得したいと考えました。これまでのところ、SQL ステートメントをパーサーに渡すことができました。クエリは正しいです、私はすでにそれをチェックしました。
Article
唯一の問題は、データベースの結果をクラスにマップする方法がわからないことです。メソッドがあることは知っていますがcolumnMapping(...)
、正直なところ、すべての列を手動でマッピングするのが面倒です...
myResults.mapToClass(Article.class)
のようなものを取得したい別の方法はありませんList<Article>
か?
これは私がすでに持っているコードです:
Finder<String, Article> find = new Finder<String, Article>(
String.class, Article.class);
String sql = "SELECT * FROM article [...]";
RawSql rawSql = RawSqlBuilder.parse(sql).create();
List<Article> returnList = find.setRawSql(rawSql).findList();
または:
Finder<String, Article> find = new Finder<String, Article>(
String.class, Article.class);
String sql = "SELECT id, title, sub_title FROM article [...]";
RawSql rawSql = RawSqlBuilder.parse(sql)
.columnMapping("id", "id")
.columnMapping("title", "title")
.columnMapping("sub_title", "subTitle")
.create();
List<Article> resultList = find.setRawSql(rawSql).findList();