Estoy usando Hibernate 4 y me gustaría simplemente enumerar todas las filas de una tabla. Todas las soluciones que encontré sugieren usar algo como "desde el nombre de la tabla", pero me gustaría evitar las codificaciones de los nombres de tablas en cadenas.Recuperando todas las filas de una tabla sin HQL?
Respuesta
Puede utilizar
session.createCriteria(MyEntity.class).list();
por ejemplo.
HQL no utiliza nombres de tablas. Utiliza nombres de entidades. Y los nombres de las entidades son (por defecto) nombres de clase. Así que usted puede utilizar
String hql = "select a from " + TheEntity.class.getSimpleName() + " a";
Pero yo estaría a favor de la lectura sobre la seguridad de tipos aquí, y utilizar pruebas
String hql = "select a from TheEntity a";
Debería haber automatizados para las consultas de todos modos.
Sí, las consultas se ponen a prueba, pero su segunda solución seguiría significando que la consulta no sería tomada en cuenta por la refactorización . –
Sí, pero sería atrapado por una prueba de falla. –
Estoy de acuerdo en que, al final, es importante obtener resultados correctos, pero como el proyecto se encuentra actualmente en etapas iniciales, ocurre algún tipo de refactorización cada semana. Por lo tanto, apoyar adecuadamente esto es bastante vital en este momento. –
// Hibernate Clase
public class CommonDAO<T> {
Session session = null;
Transaction transaction = null;
private Class<T> clazz;
public CommonDAO(){ //constructor
session = HibernateUtil.getSessionFactory().openSession();
transaction = session.beginTransaction();
Type genericSuperclass = this.getClass().getGenericSuperclass();
if (genericSuperclass instanceof ParameterizedType) {
ParameterizedType pt = (ParameterizedType) genericSuperclass;
Type type = pt.getActualTypeArguments()[0];
clazz = (Class<T>) type;
}
}
public T listById(Object id) {
T object = null;
try {
object = (T) session.get(clazz, (Serializable) id);
} catch (Exception e) {
e.printStackTrace();
}
return object;
}
}
// El usuario Clase
public class UserDAO extends CommonDAO<UserMaster> { // Here UserMaster is pojo
public UserDAO() {
super();
}
public static void main(String ar[]) {
UserMaster user = new UserDAO().listById(1); // 1 is id
System.out.println(user.getUserName());
}
}
- 1. Borrar todas las filas en la tabla
- 2. Manera eficiente de actualizar todas las filas en una tabla
- 3. Eliminar todas las filas de una tabla, arroja nullpointer
- 4. actualizar una columna para todas las filas
- 5. Recuperando todas las cookies en Python
- 6. Actualizar una columna, todas las filas
- 7. SQL Server copia todas las filas de una tabla a otra, es decir, una tabla duplicada
- 8. sqlalchemy, seleccione todas las filas
- 9. ¿Cómo leer todas las filas de la tabla grande?
- 10. Eliminar todas las filas en una tabla basada en otra tabla
- 11. Anexando a las filas de una tabla
- 12. ¿Cómo eliminar todas las filas de una tabla excepto las dos primeras y la última?
- 13. Una forma rápida de eliminar todas las filas de una tabla de datos a la vez
- 14. combinación izquierda no devolver todas las filas
- 15. devolver todas las filas duplicadas
- 16. Obtener todas las filas seleccionadas de mysql en una matriz
- 17. ¿La mejor manera de borrar todas las filas en una tabla usando NHibernate?
- 18. SQL borrar todas las filas excepto algunos
- 19. HQL: Cómo seleccionar todas las entidades distintas de alguna columna?
- 20. jQuery - cómo seleccionar todas las filas de la tabla entre dos filas de la tabla en la misma mesa
- 21. jQuery - forma más rápida de eliminar todas las filas de una tabla muy grande
- 22. Cómo eliminar de manera eficiente todas las filas de una tabla en DB2
- 23. Jquery/Ajax cuadro de diálogo donde seleccionar entre todas las filas de una tabla sql
- 24. La mejor manera de iterar a través de todas las filas en una tabla DB
- 25. Identificación de todas las filas dentro de una tabla <tbody> Elemento usando jQuery
- 26. Obtener todas las filas en la tabla "actual", y no desde las tablas secundarias
- 27. Cómo seleccionar todas las filas de la tabla (tr) que contenía una clase (jquery)
- 28. ¿Cómo se obtienen todas las filas de una tabla particular usando BeautifulSoup?
- 29. MySQL: Cómo seleccionar todas las filas de una tabla EXCEPTO la última
- 30. ¿Cómo crear rutas de índice para todas las filas y todas las secciones para uitableview?
¿Cómo podría ordenar esto? –
session.createCriteria (MyEntity.class) .addOrder (Order.asc ("age")). List(); – slonik
¿Hay alguna forma de hacer que este tipo sea seguro? – Hassan