mirror of
https://github.com/kmitresse/Cards-Rush.git
synced 2026-05-16 09:05:28 +00:00
feat(DevWeb): Edit findByField to search with int/boolean etc...
This commit is contained in:
@@ -78,5 +78,5 @@ public abstract class DAO<D> {
|
||||
* @throws DAOException en cas de problème
|
||||
* @see D
|
||||
*/
|
||||
public abstract D[] findByField(String field, String value) throws DAOException;
|
||||
public abstract D[] findByField(String field, Object value) throws DAOException;
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import jakarta.persistence.EntityManager;
|
||||
import jakarta.persistence.TypedQuery;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import uppa.project.dao.DAO;
|
||||
import uppa.project.dao.DAOException;
|
||||
import uppa.project.pojo.Game;
|
||||
@@ -41,16 +42,15 @@ public class DAO_JPA_Game extends DAO<Game> {
|
||||
|
||||
@Override
|
||||
public Game findById(int id) throws DAOException {
|
||||
Game result = entityManager.find(Game.class, new BigDecimal(id));
|
||||
entityManager.flush();
|
||||
return result;
|
||||
return entityManager.find(Game.class, new BigDecimal(id));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Game[] findByField(String field, String value) throws DAOException {
|
||||
TypedQuery<Game> query = entityManager.createQuery("SELECT u FROM Game u WHERE ?1=?2", Game.class);
|
||||
query.setParameter(1, field);
|
||||
query.setParameter(2, value);
|
||||
public Game[] findByField(String field, Object value) throws DAOException {
|
||||
String sqlQuery = String.format("SELECT u FROM Game u WHERE u.%s = (:val)", field);
|
||||
|
||||
TypedQuery<Game> query = entityManager.createQuery(sqlQuery, Game.class);
|
||||
query.setParameter("val", value);
|
||||
List<Game> results = query.getResultList();
|
||||
return results.toArray(new Game[0]);
|
||||
}
|
||||
@@ -69,15 +69,11 @@ public class DAO_JPA_Game extends DAO<Game> {
|
||||
|
||||
@Override
|
||||
public void update(Game data) throws DAOException {
|
||||
entityManager.getTransaction().begin();
|
||||
entityManager.merge(data);
|
||||
entityManager.getTransaction().commit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delete(Game data) throws DAOException {
|
||||
entityManager.getTransaction().begin();
|
||||
entityManager.remove(data);
|
||||
entityManager.getTransaction().commit();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,16 +36,15 @@ public class DAO_JPA_Player extends DAO<Player> {
|
||||
|
||||
@Override
|
||||
public Player findById(int id) throws DAOException {
|
||||
Player result = entityManager.find(Player.class, new BigDecimal(id));
|
||||
entityManager.flush();
|
||||
return result;
|
||||
return entityManager.find(Player.class, new BigDecimal(id));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Player[] findByField(String field, String value) throws DAOException {
|
||||
TypedQuery<Player> query = entityManager.createQuery("SELECT p FROM Player p WHERE ?1=?2", Player.class);
|
||||
query.setParameter(1, field);
|
||||
query.setParameter(2, value);
|
||||
public Player[] findByField(String field, Object value) throws DAOException {
|
||||
String sqlQuery = String.format("SELECT p FROM Player p WHERE p.%s = (:val)", field);
|
||||
|
||||
TypedQuery<Player> query = entityManager.createQuery(sqlQuery, Player.class);
|
||||
query.setParameter("val", value);
|
||||
List<Player> results = query.getResultList();
|
||||
return results.toArray(new Player[0]);
|
||||
}
|
||||
@@ -64,15 +63,11 @@ public class DAO_JPA_Player extends DAO<Player> {
|
||||
|
||||
@Override
|
||||
public void update(Player data) throws DAOException {
|
||||
entityManager.getTransaction().begin();
|
||||
entityManager.merge(data);
|
||||
entityManager.getTransaction().commit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delete(Player data) throws DAOException {
|
||||
entityManager.getTransaction().begin();
|
||||
entityManager.remove(data);
|
||||
entityManager.getTransaction().commit();
|
||||
}
|
||||
}
|
||||
|
||||
+2
-3
@@ -36,11 +36,10 @@ public class DAO_JPA_RecoveryPasswordToken extends DAO<RecoveryPasswordToken> {
|
||||
|
||||
@Override
|
||||
public RecoveryPasswordToken findById(int id) throws DAOException {
|
||||
RecoveryPasswordToken result = entityManager.find(RecoveryPasswordToken.class, new BigDecimal(id));
|
||||
return result;
|
||||
return entityManager.find(RecoveryPasswordToken.class, new BigDecimal(id));
|
||||
}
|
||||
|
||||
public RecoveryPasswordToken[] findByField(String field, String value) throws DAOException {
|
||||
public RecoveryPasswordToken[] findByField(String field, Object value) throws DAOException {
|
||||
String sqlQuery = String.format("SELECT r FROM RecoveryPasswordToken r WHERE r.%s = (:val)", field);
|
||||
|
||||
TypedQuery<RecoveryPasswordToken> query = entityManager.createQuery(sqlQuery, RecoveryPasswordToken.class);
|
||||
|
||||
@@ -36,11 +36,10 @@ public class DAO_JPA_User extends DAO<User> {
|
||||
|
||||
@Override
|
||||
public User findById(int id) throws DAOException {
|
||||
User result = entityManager.find(User.class, new BigDecimal(id));
|
||||
return result;
|
||||
return entityManager.find(User.class, new BigDecimal(id));
|
||||
}
|
||||
|
||||
public User[] findByField(String field, String value) throws DAOException {
|
||||
public User[] findByField(String field, Object value) throws DAOException {
|
||||
String sqlQuery = String.format("SELECT u FROM User u WHERE u.%s = (:val)", field);
|
||||
|
||||
TypedQuery<User> query = entityManager.createQuery(sqlQuery, User.class);
|
||||
|
||||
Reference in New Issue
Block a user