Yerel bir SQL sorgusunun sonucunu Grails etki alanı sınıfı örneklerinin bir koleksiyonuna eşlemek mümkün müdür?Yerel bir SQL sorgusunun Grails domain sınıfına eşleme sonucu eşlemesi
cevap
import com.acme.domain.*
def sessionFactory
sessionFactory = ctx.sessionFactory // this only necessary if your are working with the Grails console/shell
def session = sessionFactory.currentSession
def query = session.createSQLQuery("select f.* from Foo where f.id = :filter)) order by f.name");
query.addEntity(com.acme.domain.Foo.class); // this defines the result type of the query
query.setInteger("filter", 88);
query.list()*.name;
Kendinizi çok fazla sorun olmadan haritalayabilirsiniz. Alternatif olarak HQL kullanıyorsanız, parametreleri select new map()
kullanabilir ve daha sonra parametreleri el ile bağlamak için query.list().collect { new MyDomainObject(it) }
'u kullanabilirsiniz. Alternatif Grails app Groovy SQL kullanarak
Doğru, ancak bunun, Hibernate'in ağır şekilde optimize edilmiş kodlarından önemli ölçüde daha yavaş olacağını varsayalım. –
import groovy.sql.Sql
class TestQService{
def dataSource //Auto Injected
def getBanksForId(int bankid){
def sql = Sql.newInstance(dataSource)
def rows = sql.rows(""" Select BnkCode , BnkName from Bank where BnkId = ?""" , [bankid])
rows.collect{
new Bank(it)
}
}
class Bank{
String BnkCode
String BnkName
}
}
Sql.newInstance (dataSource), bir veri yığını nesnesini alan hiçbir yöntem olmadığından başarısız olur. – benstpierre
- 1. Bir Grails oluşturma Tüm URL eşlemesi yakalama
- 2. AutoMapperMappingException - Eksik eşleme türü eşlemesi veya desteklenmeyen eşleme
- 3. org.hibernate.MappingException: OneToOne Eşlemesi için eşleme için yinelenen sütun Eşleme
- 4. Hazırda bekletme eşlemesi veritabanıyla eşleme nasıl yapılır
- 5. seçme sql sorgusunun sonucunu ms access
- 6. SQL-sunucusuna XML eşlemesi
- 7. SQL sorgusunun sonuçlarını nasıl alırım?
- 8. İlkbaharda Grails Domain özellikleri alanına benzer bir şey var mı?
- 9. Grails Domain Class'ta nasıl geçici bir değişken oluşturabilirim?
- 10. Powershell - Kullanıcı Eşlemesi SQL Server 2012
- 11. varlık çerçevesindeki tek bir varlık sınıfına birden çok tablo eşleme
- 12. SQL desen eşleme
- 13. Toplam sonucu olarak SQL
- 14. göster SQL sonucu
- 15. Görüntülenen Alan Adını Grails Domain Sınıfı Olarak Yeniden Adlandır
- 16. Uygulama sonucu, SQL sorgusunun yalnızca geri dönmek zorunda olmasına rağmen datetime'dır.
- 17. sql sorgusunun başlangıç / bitiş saatini alın
- 18. SQL sorgusunun SELECT olup olmadığı nasıl belirlenir?
- 19. Hata nerede sql güncelleme sorgusunun fıkra
- 20. SQL Server 2008 Hiyerarşi için NHibernate eşlemesi Veri türü
- 21. Hazırda bekleme sonucu sorgulama
- 22. Bir boole sonucu veren T-SQL yordamı
- 23. SQL sorgusu sonucu bir dize (veya değişkeni)
- 24. Kovan sorgusunun basit örneği?
- 25. SQL SORGU Sonucu düzenlemesi sorunu
- 26. VBA SQL sorgusu sonucu hatası
- 27. göster sql istek sonucu DataGridView
- 28. Grails bir hasMany
- 29. Groovy etki alanı eşlemesi
- 30. Grails
bu çok yararlı oldu! – Topera
Teşekkürler. Bu bana da yardımcı oldu ... –
Bu cevapta benim için eksik olan şey, 'def oturumuFactory'nin kontrolde görünmesi gerektiğidir (eğer bunu benim gibi bir denetleyicide yapıyorsanız). Alan enjekte edilir ve daha sonra sessionFactory.currentSession'ı yapabilirsiniz. – Jason