Как запустить JPA Query в игровой платформе - PullRequest
6 голосов
/ 27 июля 2011

Я новичок в Play, а также в спящем режиме и JPA.Я использую MySql DB и JPA Я включил

import javax.persistence.Entity;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
import javax.persistence.Query;

import play.db.jpa.JPA;
import play.mvc.Controller;
import play.db.jpa.*;

У меня есть этот запрос

List languages = FormLanguages.findAll();
render(languages);

, который работает правильно, но я хочу выбрать на основе идентификатора, что-то вроде этого

"select * from FormLanguages, где id> 10"

Когда я так использую

Query query = JPA.em().createQuery("select * from FormLanguages");
List<FormLanguages> articles = query.getResultList();
render(articles);

Что дает мне ошибку IllegalArgumentException

При использовании вот так

List queryList = FormLanguages.em().createQuery("select * from FormLanguages").getResultList();
render(queryList);

, который выдает ту же ошибку, пожалуйста, помогите мне, как написать Query

Также предложите мне несколько сайтов

1 Ответ

4 голосов
/ 27 июля 2011

В вашем сценарии:

List languages = FormLanguages.find("id > ?",10).fetch();

Должно работать.

Этот , а также этот может помочь вам выучить язык запросов JPA.Как только вы ознакомитесь с ними, с помощью find вы сможете запускать эти запросы.Или используйте именованные запросы .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...