Jumat, 21 September 2012

Native SQL

Jika JPAQL di atas masih juga tidak mencukupi, kita bisa langsung mengeksekusi SQL ke database melalui JPA. Sejauh ini, JPA sudah mencukupi untuk aplikasi blog kita. Tapi sekedar untuk menambah pengetahuan, mari kita ambil 10 artikel terbaru dengan menggunakan native SQL MySQL.
SQLnya sebagai berikut

select * from T_ARTICLE
order by publishDate desc limit 0,10

SQL di atas kita gunakan dalam ArticleDao sebagai berikut.

public List<Article> topTenNative() {
String sql = "select * from T_ARTICLE ";
sql += "order by publishDate desc limit 0,10";
return entityManager
.createNativeQuery(sql,Article.class)
.getResultList();
}

Untuk menggunakannya, kita panggil methodnya seperti biasa. Client code tidak perlu tahu implementasi internalnya. Dari sisi client code, sama saja seperti mengakses JPAQL.

Tidak ada komentar:

Posting Komentar