Example usage for org.hibernate SQLQuery list

List of usage examples for org.hibernate SQLQuery list

Introduction

In this page you can find the example usage for org.hibernate SQLQuery list.

Prototype

List<R> list();

Source Link

Document

Return the query results as a List.

Usage

From source file:chart_demo.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*w w  w. j  av a2 s.  c  o  m*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    try {

        //            this file sends records to the chart output page

        List<AssetRecords> a = new ArrayList<>();
        SessionFactory sf = util.NewHibernateUtil.getSessionFactory();
        Session ss = sf.openSession();
        Transaction tr = ss.beginTransaction();
        int pid = 10;

        String s = "SELECT sum(Price),Year FROM the_asset_consultancy.AssetRecords where Assetid=" + pid
                + " group by Price,Year ;";

        SQLQuery query = ss.createSQLQuery(s);

        List<Object[]> lt = query.list();

        for (Object[] op : lt) {
            AssetRecords ar = new AssetRecords();
            ar.setPrice(op[0].toString());
            ar.setYear(op[1].toString());
            a.add(ar);

            out.println(a);

        }

        System.out.println("Size of array:" + a.size());
        request.setAttribute("al", a);
        RequestDispatcher rd = request.getRequestDispatcher("chart_demo_2.jsp");
        rd.forward(request, response);

    } catch (HibernateException he) {
        out.print(he.getMessage());
    }
}

From source file:GetPropDetailServ.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from   ww  w . j a  v  a 2 s . co  m
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    try {

        SessionFactory sf = util.NewHibernateUtil.getSessionFactory();
        Session ss = sf.openSession();

        int pid = Integer.parseInt(request.getParameter("pid"));

        ArrayList<AssetRecords> a = new ArrayList<>();
        String s = "SELECT sum(Price),Year FROM the_asset_consultancy.AssetRecords where Assetid=" + pid
                + " group by Price,Year ;";

        SQLQuery query = ss.createSQLQuery(s);

        List<Object[]> lt = query.list();

        for (Object[] op : lt) {
            AssetRecords ar = new AssetRecords();
            ar.setPrice(op[0].toString());
            ar.setYear(op[1].toString());
            a.add(ar);

            out.println(a);

        }
        System.out.println("Size of array:" + a.size());
        request.setAttribute("al", a);

        Collections.sort(a, new Comparator<AssetRecords>() {

            @Override
            public int compare(AssetRecords o1, AssetRecords o2) {
                return o1.getYear().compareTo(o2.getYear());
            }
        });

        Criteria cr = ss.createCriteria(PropDetail.class);
        cr.add(Restrictions.eq("pId", pid));
        PropDetail pd = (PropDetail) cr.uniqueResult();

        System.out.println("property found:" + pd.getPId());

        Criteria cr1 = ss.createCriteria(PropFeedback.class);
        cr1.add(Restrictions.eq("pId", pd));

        ArrayList<PropFeedback> pfl = (ArrayList<PropFeedback>) cr1.list();

        request.setAttribute("pd", pd);

        if (!pfl.isEmpty()) {
            request.setAttribute("pfl", pfl);
        } else {
            System.out.println("No property feedback available");
        }

        //for the random agent display

        Criteria cr2 = ss.createCriteria(AgentDetail.class);

        ArrayList<AgentDetail> adl = (ArrayList<AgentDetail>) cr2.list();

        if (!adl.isEmpty()) {
            request.setAttribute("adl", adl);

        } else {
            System.out.println("random agent list empty");
        }

        RequestDispatcher rd = request.getRequestDispatcher("single.jsp");
        rd.forward(request, response);

    } catch (HibernateException e) {
        out.print(e.getMessage());
    }
}

From source file:administracion.actions.GestorOperacionesDatosRestaurante.java

public Restaurante obtenerDatosRestaurante() {
    Session sesion = null;/*  w  w w.j a  v  a  2  s  .c o m*/
    Restaurante restaurante = null;
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();
        String sql = "SELECT cif,nombre_local,direccion,telefono FROM datos_local";
        SQLQuery query = sesion.createSQLQuery(sql).addEntity(Restaurante.class);
        List<Restaurante> lista = query.list();
        sesion.getTransaction().commit();
        restaurante = lista.get(0);
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        System.out.println("Error obtener datos restaurante: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return restaurante;
}

From source file:administracion.actions.GestorOperacionesDatosRestaurante.java

public List<Impuesto> obtenerImpuestos() {
    Session sesion = null;//from w  w  w  . j  a  v a 2 s . c o  m
    List<Impuesto> lista = null;
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();
        String sql = "SELECT nombre_impuesto,id_impuesto,valor FROM impuesto WHERE id_impuesto IN (SELECT MAX(id_impuesto) FROM impuesto GROUP BY nombre_impuesto) and valor > 0 ORDER BY nombre_impuesto";
        SQLQuery query = sesion.createSQLQuery(sql).addEntity(Impuesto.class);
        lista = query.list();
        sesion.getTransaction().commit();
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        System.out.println("Error obtener impuestos: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return lista;
}

From source file:administracion.actions.GestorOperacionesDatosRestaurante.java

public int obtenerNumeroMesas() {
    Session sesion = null;//from   w w w  . j a v a 2s  .  c o  m
    int numeroMesa = 0;
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();
        String sql = "SELECT MAX(numero_mesa) AS numero_mesa,estado_mesa,activo FROM mesa WHERE activo = true"; //Nos interesa el numero de mesas activas
        SQLQuery query = sesion.createSQLQuery(sql).addEntity(Mesa.class);
        List<Mesa> lista = query.list();
        numeroMesa = lista.get(0).getNumero();
        sesion.getTransaction().commit();
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        System.out.println("Error obtener numero de mesas: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return numeroMesa;
}

From source file:administracion.actions.GestorOperacionesDatosRestaurante.java

public int actualizarNumeroMesas(int numeroMesasInicial, int numeroMesasNuevo) {

    int resultadoOperacion = 0;
    int diferencia = 0;
    Session sesion = null;/*from   w w w  .  ja va  2s.  co m*/
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();

        if (numeroMesasNuevo > numeroMesasInicial) { //En este caso queremos ampliar el numero de mesas
            diferencia = numeroMesasNuevo - numeroMesasInicial; //Obtenemos la diferencia

            //Obtenemos el numero de mesas total. Teniendo en cuenta las activas + las no activas (si las hay)
            String sql = "SELECT numero_mesa,estado_mesa,activo FROM mesa";
            SQLQuery query = sesion.createSQLQuery(sql).addEntity(Mesa.class);
            int numeroMesasTotal = (int) query.list().size();

            for (int i = numeroMesasInicial + 1; i <= numeroMesasNuevo; i++) { //Itreamos desde el mayor numero de mesa activo actualmente hasta el numero de mesas final que queremos                   
                if (numeroMesasTotal > i) { //Quiere decir que la mesa ya existia pero estaba deshabilitada                       
                    String sql1 = "UPDATE mesa SET activo = true WHERE numero_mesa = " + i; //Actualizamos su estado
                    SQLQuery query1 = sesion.createSQLQuery(sql1);
                    query1.executeUpdate();
                } else { //La mesa no exite y la creamos                 
                    Mesa mesa = new Mesa(); //Creamos la mesa
                    mesa.setNumero(i);
                    mesa.setEstado(ESTADO_MESA);
                    mesa.setActivo(true);
                    sesion.save(mesa); //Hacemos el INSERT
                }
            }
            sesion.getTransaction().commit();
            resultadoOperacion = OPERACION_SUCCESS;

        } else { //En este caso queremos reducir el numero de mesas
            List<Mesa> listaMesas = obtenerListadoMesas(); //Obtenemos el listado de mesas (nos interesa para ver el estado)
            boolean reducir = true; //Indica si podemos realizar la operacion para reducir el numero de mesas          
            diferencia = numeroMesasInicial - numeroMesasNuevo; //Numero de mesas que queremos reducir
            for (int i = numeroMesasInicial - 1; i >= numeroMesasNuevo; i--) { //Iteremos por las mesas que queremos desactivar
                if (!listaMesas.get(i).getEstado().equals(ESTADO_MESA)) { //Si la mesa no esta libre
                    reducir = false; //NO PERMITIMOS LA OPERACION
                    resultadoOperacion = OPERACION_NO_POSIBLE;
                    break;
                }
            }
            if (reducir) { //Si todas las mesas que queremos desactivar estan libres
                for (int i = numeroMesasInicial - 1; i >= numeroMesasNuevo; i--) { //Las recorremos y las desactivamos
                    String sql = "UPDATE mesa SET activo = false WHERE numero_mesa = " + (i + 1);
                    SQLQuery query = sesion.createSQLQuery(sql);
                    query.executeUpdate();
                }
                sesion.getTransaction().commit();
                resultadoOperacion = OPERACION_SUCCESS;
            }
        }
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        resultadoOperacion = OPERACION_ERROR;
        System.out.println("Error actualizar numero de mesas: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return resultadoOperacion;
}

From source file:administracion.actions.GestorOperacionesDatosRestaurante.java

public List<Mesa> obtenerListadoMesas() {
    Session sesion = null;//www .ja v  a  2  s.co  m
    List<Mesa> lista = null;
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();
        String sql = "SELECT numero_mesa,estado_mesa,activo FROM mesa WHERE activo = true"; //En este caso siempre nos van a interesar las mesas que esten en estado activo=true
        SQLQuery query = sesion.createSQLQuery(sql).addEntity(Mesa.class);
        lista = query.list();
        sesion.getTransaction().commit();
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        System.out.println("Error obtener lista de mesas: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return lista;
}

From source file:administracion.actions.GestorOperacionesGenero.java

public List<Categoria> obtenerListaCategorias() {
    Session sesion = null;//from   ww  w .j  av  a2s.c  o m
    List<Categoria> lista = null;
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();
        String sql = "SELECT id_categoria,nombre_categoria,activo FROM categoria ORDER BY nombre_categoria";
        SQLQuery query = sesion.createSQLQuery(sql).addEntity(Categoria.class);
        lista = query.list();
        sesion.getTransaction().commit();
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        System.out.println("Error obtener lista categorias: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return lista;
}

From source file:administracion.actions.GestorOperacionesGenero.java

public List<Categoria> obtenerListaCategoriasActivas() {
    Session sesion = null;/*from   w w w  .j a  va 2  s .c o m*/
    List<Categoria> lista = null;
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();
        String sql = "SELECT id_categoria,nombre_categoria,activo FROM categoria WHERE activo = true ORDER BY nombre_categoria";
        SQLQuery query = sesion.createSQLQuery(sql).addEntity(Categoria.class);
        lista = query.list();
        sesion.getTransaction().commit();
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        System.out.println("Error obtener lista categorias: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return lista;
}

From source file:administracion.actions.GestorOperacionesGenero.java

public Categoria obtenerCategoria(int id) {
    Session sesion = null;/*from   w w  w  .j  a va  2s  . com*/
    Categoria categoria = null;
    try {
        HibernateUtil hb = new HibernateUtil();
        sesion = hb.getSessionFactory().openSession();
        sesion.beginTransaction();
        String sql = "SELECT id_categoria,nombre_categoria,activo FROM categoria WHERE id_categoria = " + id;
        SQLQuery query = sesion.createSQLQuery(sql).addEntity(Categoria.class);
        categoria = (Categoria) query.list().get(0);
        sesion.getTransaction().commit();
    } catch (HibernateException e) {
        System.out.println("Error en la conexion con la base de datos: " + e);
        throw e;
    } catch (Exception e) {
        System.out.println("Error obtener categoria: " + e);
    } finally {
        if (sesion != null) {
            sesion.close();
        }
    }

    return categoria;
}