-1
所以我想实施一种方法,允许我自动准备测试 测试是一组问题,测试必须自动准备 因此,问题将从数据库中随机显示。我想实施一种方法,允许我准备测试
我知道sql query
是这样的:
SELECT q FROM Question ORDER BY RAND() LIMIT ...;
这个谁关切地级测试提供的所有服务包
package tn.esen.services.gestion.test;
@Stateless
public class GestionTest implements GestionTestRemote, GestionTestLocal {
@PersistenceContext
private EntityManager entityManager;
/**
* Default constructor.
*/
public GestionTest() {
// TODO Auto-generated constructor stub
}
@Override
public boolean addTest(Test test) {
try {
entityManager.persist(test);
return true;
} catch (Exception e) {
System.err.println("Impossible de créer un Test");
} return false;
}
@Override
public boolean updateTest(Test test) {
try {
entityManager.merge(test);
return true;
} catch (Exception e) {
System.err.println("Impossible de mettre à jour un test");
} return false;
}
@Override
public boolean deleteTest(Test test) {
try {
entityManager.remove(entityManager.merge(test));
return true;
} catch (Exception e) {
System.err.println("Impossible de supprimer un test");
} return false;
}
@Override
public List<Test> readAllTest() {
String jpql = "select t from Test t ";
Query query = entityManager.createQuery(jpql);
return query.getResultList();
}
@Override
public Test findTestById(Integer id) {
return (Test) entityManager.find(Test.class, id);
}
@Override
public List<Test> findAllTestByCandidat(Candidat candidat) {
Query query=entityManager.createQuery("select distinct t from Test t join t.resultats r where r.candidat=:cand");
query.setParameter("cand", candidat);
return query.getResultList();