Example usage for org.hibernate Query setParameter

List of usage examples for org.hibernate Query setParameter

Introduction

In this page you can find the example usage for org.hibernate Query setParameter.

Prototype

@SuppressWarnings("unchecked")
Query<R> setParameter(int position, Object val);

Source Link

Document

Bind a positional query parameter using its inferred Type.

Usage

From source file:App.Dao.DaoAbstract.java

protected List getHqlPreparedQuery(String query, String... argc) {
    List resultList = null;/*w  w w . j av  a 2  s  . co  m*/
    try {
        session.beginTransaction();
        Query q = session.createQuery(query);
        for (int i = 0; i < argc.length - 1; i += 2) {
            q.setParameter(argc[i], argc[i + 1]);
        }
        resultList = q.list();
        session.getTransaction().commit();
    } catch (HibernateException he) {
        System.err.println(he.getMessage());
    }
    return resultList;
}

From source file:app.datos.clases.FiltroInmueble.java

License:Open Source License

/**
 * Setea los parmetros con los que lo construyeron a la consulta hql de hibernate
 *///from  w  w  w .j a  va 2s.c o m
public Query setParametros(Query query) {
    if (pais != null) {
        query.setParameter("pai", "%" + pais + "%");
    }
    if (provincia != null) {
        query.setParameter("pro", "%" + provincia + "%");
    }
    if (localidad != null) {
        query.setParameter("loc", "%" + localidad + "%");
    }
    if (barrio != null) {
        query.setParameter("bar", "%" + barrio + "%");
    }
    if (tipoInmueble != null) {
        query.setParameter("tii", tipoInmueble);
    }
    if (cantidadDormitorios != null) {
        query.setParameter("cad", cantidadDormitorios);
    }
    if (precioMaximo != null) {
        query.setParameter("pma", precioMaximo);
    }
    if (precioMinimo != null) {
        query.setParameter("pmi", precioMinimo);
    }
    if (estadoInmueble != null) {
        query.setParameter("esi", estadoInmueble);
    }
    return query;
}

From source file:app.persistencia.DAO.java

/**
 * Elimina un libro cuyo ID se pas apor parmetro
 *
 * @param id param entidad Sirve para generar la query mediante la funcion
 * Query query = session.createQuery("DELETE FROM " + entidad + " WHERE
 * ID=:id");//from ww  w .  ja v  a 2 s .com
 * @return true - Si ha sido posible eliminar el objeto Libro
 * satisfactoriamente
 */
public boolean eliminarEntidad(int id, String entidad) {

    int result = -1;

    try {

        Query query = session.createQuery("DELETE FROM " + entidad + " WHERE ID=:id");
        query.setParameter("id", id);
        result = query.executeUpdate();

    } catch (HibernateException e) {

        System.out.println(
                "\n**********Error HQL en eliminarEntidad()********** Mas detalles -->" + e.getMessage());

    } finally {
        if (result > 0) {

            System.out.println("\n**********Se ha eliminado el id: " + id + " de la entidad: " + entidad
                    + " -- DELETE Ok**********");
            return true;

        } else {

            System.out.println("\n**********NO! Se ha eliminado el id: " + id + " de la entidad: " + entidad
                    + " -- DELETE Ok**********");
            return false;

        }
    }

}

From source file:app.persistencia.DAO.java

/**
 * Devuelve un objeto Libro cuyo ISBN coincida con el pasado por parmetro.
 * En el programa principal 'MainFrame.java' se ha utilizado para dar
 * funcionalidad al botn de bsqueda./* www  .  ja  v a  2 s .  c om*/
 *
 * @param isbn - String
 * @return Libro - clase principal del paquete 'app.modelo'
 */
public Libro consultarISBN(String isbn) {

    List<Libro> libreria = new ArrayList<>();
    Libro libro = null;

    try {
        Query q1 = session.createQuery(" from Libro " + " where isbn LIKE :isbn");
        q1.setParameter("isbn", isbn);
        libreria = q1.list();

        if (libreria.size() > 0) {
            isbn_search = true;
            libro = (Libro) libreria.get(0);
        }

    } catch (HibernateException e) {
        System.out.println("Error al consultar el ISBN: " + isbn + " . Mas detalles -->" + e.getMessage());
    }

    return libro;
}

From source file:app.persistencia.DAO.java

/**
 * Devuelve un objeto Libro cuyo Titulo coincida tottal o parcialmente con
 * el pasado por parmetro. En el programa principal 'MainFrame.java' se ha
 * utilizado para dar funcionalidad al botn de bsqueda.
 *
 * @param titulo - String/*from   w w  w  .  ja va2 s.c  om*/
 * @return List<Libro> - Lista de objetos de tipo Libro
 */
public List<Libro> consultarTituloLibro(String titulo) {

    //El argumento titulo recibido en el metodo puede que no sea el nombre completo
    //Se trata de devolver una lista con todos los libros que ocntienen ese dato
    //como parte de su titulo. Utilizar el operador 'LIKE'
    List<Libro> libreria = new ArrayList<>();

    try {

        Query q1 = session.createQuery("from Libro l where l.titulo LIKE :titulo ");
        /*Dara que el LIKE funcione correctamente debe aadirse % en la consulta como comodin
         Ejemplo:
         List<Libro> libreria = new ArrayList<>();
         libreria=dao.consultarTitulo("%br%"); --> esto devuelve una lista con todos los libro
         cuyo titulo contiene la cadena 'br'
         */
        q1.setParameter("titulo", titulo);
        libreria = q1.list();

        if (libreria.size() > 0) {
            encontrado = true;

        }

    } catch (HibernateException ex) {
        Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
    }

    return libreria;

}

From source file:app.persistencia.DAO.java

/**
 * Devuelve un objeto Editorial cuyo Titulo coincida tottal o parcialmente
 * con el pasado por parmetro. En el programa principal 'MainFrame.java' se
 * ha utilizado para dar funcionalidad al botn de bsqueda.
 *
 * @param nombre - String/*from   www .  j  av  a 2 s  .co  m*/
 * @return List<Editorial> - Lista de objetos de tipo Editorial
 */
public List<Editorial> consultarNombreEditorial(String nombre) {

    //El argumento nombre recibido en el metodo puede que no sea el nombre completo
    //Se trata de devolver una lista con todos los editoriales que ocntienen ese dato
    //como parte de su nombre. Utilizar el operador 'LIKE'
    List<Editorial> editoriales = new ArrayList<>();

    try {

        Query q1 = session.createQuery("from Editorial e where e.nombre LIKE :nombre ");
        /*Dara que el LIKE funcione correctamente debe aadirse % en la consulta como comodin
         Ejemplo:
         List<Editorial> libreria = new ArrayList<>();
         libreria=dao.consultarTitulo("%br%"); --> esto devuelve una lista con todos los Editorial
         cuyo titulo contiene la cadena 'br'
         */
        q1.setParameter("nombre", nombre);
        editoriales = q1.list();

    } catch (HibernateException ex) {
        Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
    }
    return editoriales;

}

From source file:app.persistencia.DAO.java

/**
 * Devuelve un objeto Autor cuyo Titulo coincida tottal o parcialmente con
 * el pasado por parmetro. En el programa principal 'MainFrame.java' se ha
 * utilizado para dar funcionalidad al botn de bsqueda.
 *
 * @param nombre - String/*from   w w w .  j  a v a  2s.c o m*/
 * @return List<Autor> - Lista de objetos de tipo Autor
 */
public List<Autor> consultarNombreAutor(String nombre) {

    //El argumento titulo recibido en el metodo puede que no sea el nombre completo
    //Se trata de devolver una lista con todos los libros que ocntienen ese dato
    //como parte de su titulo. Utilizar el operador 'LIKE'
    List<Autor> autores = new ArrayList<>();

    try {
        // abrirConexion();

        Query q1 = session.createQuery("from Autor e where e.nombre LIKE :nombre ");
        /*Dara que el LIKE funcione correctamente debe aadirse % en la consulta como comodin
         Ejemplo:
         List<Libro> libreria = new ArrayList<>();
         libreria=dao.consultarTitulo("%br%"); --> esto devuelve una lista con todos los libro
         cuyo titulo contiene la cadena 'br'
         */
        q1.setParameter("nombre", nombre);
        autores = q1.list();

    } catch (HibernateException ex) {
        Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
    }

    return autores;

}

From source file:app.persistencia.DAO.java

/**
 * Devuelve un objeto Autor cuyo Titulo coincida tottal o parcialmente con
 * el pasado por parmetro. En el programa principal 'MainFrame.java' se ha
 * utilizado para dar funcionalidad al botn de bsqueda.
 *
 * @param nacionalidad - String/*from  www .j  a  va 2s. c  o m*/
 * @return List<Autor> - Lista de objetos de tipo Autor
 */
public List<Autor> consultarNacionalidadAutor(String nacionalidad) {

    //El argumento titulo recibido en el metodo puede que no sea el nombre completo
    //Se trata de devolver una lista con todos los libros que ocntienen ese dato
    //como parte de su titulo. Utilizar el operador 'LIKE'
    List<Autor> autores = new ArrayList<>();

    try {
        // abrirConexion();
        /*Dara que el LIKE funcione correctamente debe aadirse % en la consulta como comodin
        Ejemplo:
        List<Libro> libreria = new ArrayList<>();
        libreria=dao.consultarTitulo("%br%"); --> esto devuelve una lista con todos los libro
        cuyo titulo contiene la cadena 'br'
        */
        Query q1 = session.createQuery("from Autor e where e.nacionalidad=:nacionalidad ");
        q1.setParameter("nacionalidad", nacionalidad);
        autores = q1.list();

    } catch (HibernateException ex) {
        Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
    }
    return autores;
}

From source file:app.persistencia.DAO.java

/**
 * El metodo recibe el isbn dle libro a actualizar, asi como el nuevo
 * precio./*w  w w.  j  a  v  a2  s. c  om*/
 *
 * @param isbn - String
 * @param precio - double
 * @return true - Si se ha podido cambiar el precio satisfactoriamente
 */
public boolean modificarPrecioLibro(String isbn, double precio) {
    try {

        //El metodo recibe el isbn del libro a actualizar, asi como el nuevo precio
        Query q1 = session.createQuery("UPDATE Libro l  set l.precio = :precio" + " WHERE isbn = :isbn");
        q1.setParameter("precio", precio);
        q1.setParameter("isbn", isbn);
        int result = q1.executeUpdate();

        if (result > 0) {

            System.out.println("\n**********Precio del libro con isbn " + isbn
                    + " cambiado Ok**********\nNuevo precio: " + precio);

        }

    } catch (HibernateException e) {

        System.out.println("Error al realizar cambio de precio. Mas detalles -->" + e.getMessage());

    }

    return true;
}

From source file:applicationController.Handlers.GetAllChatsHandler.java

@Override
public void handleIt(HashMap inMap, JSONOutputStream outToClient) {
    Session session = HibernateUtilSingleton.getSessionFactory().getCurrentSession();
    Transaction transaction = session.beginTransaction();
    Query query = session.createQuery("FROM Meeting WHERE meeting_id = :meeting ");
    query.setParameter("meeting", this.commBean.convertLong(((HashMap) inMap.get("data")).get("meeting")));
    Meeting meeting = (Meeting) query.uniqueResult();
    String returnMsg = "";
    if (meeting != null) {
        for (Message msg : meeting.getMessages()) {
            returnMsg += msg.getUsername() + ": " + msg.getMsg() + "\n";
        }/*from  ww w.  j a  va 2  s  . c om*/
    } else {
        Meeting newMeeting = new Meeting();
        newMeeting.setMeeting_id(this.commBean.convertLong(((HashMap) inMap.get("data")).get("meeting")));
        newMeeting.setName("not named yet");
        session.save(newMeeting);
    }

    session.getTransaction().commit();

    this.commBean.setCommand("SENDCHAT");
    HashMap data = new HashMap();
    data.put("msg", returnMsg);
    this.commBean.setData(data);

    try {
        outToClient.writeObject(this.commBean);
    } catch (Exception e) {
        e.printStackTrace();
    }
}