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