Example usage for org.hibernate SQLQuery setParameter

List of usage examples for org.hibernate SQLQuery setParameter

Introduction

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

Prototype

@Override
    NativeQuery<T> setParameter(int position, Object val);

Source Link

Usage

From source file:controlers.UserControler.java

public String detailFestival(Long festivalId) {
    String resultPage = "festival";

    Session session = null;//from  w  ww . j  av  a  2s.  c  o  m
    Transaction tx = null;
    try {
        session = HibernateUtil.getSessionFactory().openSession();
        tx = session.beginTransaction();
        Criteria cr = session.createCriteria(Festival.class);
        cr.add(Restrictions.eq("idFest", festivalId));
        List result = cr.list();
        if (result.size() > 0) {
            currentFestival = (Festival) result.get(0);

            currentFestival.setBrojPregleda(currentFestival.getBrojPregleda() + 1);

            session.save(currentFestival);

            String sql = "SELECT I.naziv, I.vremeOd, I.vremeDo, D.redniBroj FROM izvodjac I, dan D WHERE I.idFest = :festival_id AND D.idFest = :festival_id AND I.idDan = D.idDan ORDER BY I.vremeOd";
            SQLQuery query = session.createSQLQuery(sql);
            query.setParameter("festival_id", festivalId);
            query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
            izvodjaciFestivala = query.list();

            dani = new HashMap<String, String>();
            izvodjaciFestivala.forEach((Map m) -> {
                dani.put(m.get("redniBroj").toString(), m.get("redniBroj").toString());
            });

            cr = session.createCriteria(Media.class);
            cr.add(Restrictions.eq("festival", currentFestival));
            cr.add(Restrictions.eq("slikaVideo", "slika"));
            result = cr.list();
            if (result.size() > 0)
                currentFestivalMainImg = ((Media) result.get(0)).getUrl();
            else
                currentFestivalMainImg = null;

            cr = session.createCriteria(Link.class);
            cr.add(Restrictions.eq("festival", currentFestival));
            result = cr.list();
            if (result.size() > 0)
                linkoviFestivala = (List<Link>) result;
            else
                linkoviFestivala = new ArrayList<Link>();
        } else {
            porukaZaPretragu = "Dolo je do greke, molimo Vas, pokuajte malo kasnije.";
            resultPage = "index";
        }
    } catch (Exception ex) {
        if (tx != null)
            tx.rollback();
        ex.printStackTrace();
    } finally {
        if (tx != null)
            tx.commit();
        session.close();
    }

    return resultPage;
}

From source file:controlers.UserControler.java

public String reservations() {

    Session session = null;//from w  ww  . ja  v  a 2 s  .  c o  m
    Transaction tx = null;

    try {
        session = HibernateUtil.getSessionFactory().openSession();
        tx = session.beginTransaction();

        String sql = "SELECT F.status AS statusFestivala, R.idRez, F.naziv, R.vremeRez, F.datumVremeDo, R.paket, R.brojUlaznica, F.cenaPaket, F.cenaDan, R.status FROM rezervacija R, festival F WHERE R.username = :username AND R.idFest = F.idFest ORDER BY R.vremeRez DESC;";
        SQLQuery query = session.createSQLQuery(sql);
        query.setParameter("username", LogedInKorisnik.korisnik.getUsername());
        query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
        rezervacije = query.list();

    } catch (Exception ex) {
        if (tx != null)
            tx.rollback();
        tx = null;
        ex.printStackTrace();
    } finally {
        if (tx != null)
            tx.commit();
        session.close();
    }

    return "reservations";
}

From source file:controlers.UserControler.java

public String cancelReservation(Long rezId) {

    Session session = null;//from  w w w . j  a va  2 s .  c o  m
    Transaction tx = null;

    try {
        session = HibernateUtil.getSessionFactory().openSession();
        tx = session.beginTransaction();

        Criteria cr = session.createCriteria(Rezervacija.class);
        cr.add(Restrictions.eq("idRez", rezId));
        List result = cr.list();
        Rezervacija rezForDelete = (Rezervacija) result.get(0);

        boolean isPaket = rezForDelete.getPaket();
        int numOfUlaznica = rezForDelete.getBrojUlaznica().intValue();

        Criteria cr2 = session.createCriteria(Dan.class);
        cr2.add(Restrictions.eq("festival", rezForDelete.getFestival()));
        List daysOfFestival = cr2.list();

        for (Object obj : daysOfFestival) {
            Dan dan = (Dan) obj;
            if (rezForDelete.getPaket() || dan.getRedniBroj() == rezForDelete.getDan().getRedniBroj()) {
                dan.setBrojUlaznica(dan.getBrojUlaznica() + rezForDelete.getBrojUlaznica());
                session.save(dan);
                //tx.commit();                        
            }
        }

        rezForDelete.setStatus("otkazana");

        session.save(rezForDelete);
        tx.commit();
        session.close();

        session = HibernateUtil.getSessionFactory().openSession();
        tx = session.beginTransaction();

        String sql = "SELECT F.status AS statusFestivala, R.idRez, F.naziv, R.vremeRez, F.datumVremeDo, R.paket, R.brojUlaznica, F.cenaPaket, F.cenaDan, R.status FROM rezervacija R, festival F WHERE R.username = :username AND R.idFest = F.idFest ORDER BY R.vremeRez DESC;";
        SQLQuery query = session.createSQLQuery(sql);
        query.setParameter("username", LogedInKorisnik.korisnik.getUsername());
        query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
        rezervacije = query.list();

    } catch (Exception ex) {
        if (tx != null)
            tx.rollback();
        tx = null;
        ex.printStackTrace();
    } finally {
        if (tx != null)
            tx.commit();
        session.close();
    }

    currentDate = new Date();
    return "reservations";
}

From source file:controller.HibProduktController.java

public String save() {
    SessionFactory sf = SklepHibernateUtil.getSessionFactory();
    Session session = sf.openSession();//from   w  ww.  j  ava2s . c o m
    Transaction tx = null;
    try {
        tx = session.beginTransaction();
        SQLQuery insertQuery = session
                .createSQLQuery("INSERT INTO Produkt(nazwa,cena,liczba_sztuk)VALUES(?,?,?)");
        insertQuery.setParameter(0, this.p.getNazwa());
        insertQuery.setParameter(1, this.p.getCena());
        insertQuery.setParameter(2, this.p.getLiczbaSztuk());
        insertQuery.executeUpdate();
        tx.commit();
    } catch (HibernateException e) {
        if (tx != null) {
            tx.rollback();
        }
        e.printStackTrace();
    } finally {
        session.close();
    }
    this.p = new Produkt();
    return "/faces/admin/produkty.xhtml";
}

From source file:controller.HibUserController.java

public String register() {
    SessionFactory sf = SklepHibernateUtil.getSessionFactory();
    Session session = sf.openSession();//from   w  w w .  j a va2 s. com
    Transaction tx = null;
    try {
        tx = session.beginTransaction();
        SQLQuery insertQuery = session.createSQLQuery(
                "INSERT INTO Uzytkownik(userid, password, imie, nazwisko, email, wiek)VALUES(?,?,?,?,?,?)");
        insertQuery.setParameter(0, this.u.getUserid());
        String pass = sha256(this.u.getPassword());
        insertQuery.setParameter(1, pass);
        insertQuery.setParameter(2, this.u.getImie());
        insertQuery.setParameter(3, this.u.getNazwisko());
        insertQuery.setParameter(4, this.u.getEmail());
        insertQuery.setParameter(5, this.u.getWiek());
        insertQuery.executeUpdate();
        tx.commit();
        tx = session.beginTransaction();
        insertQuery = session.createSQLQuery("INSERT INTO Grupy(userid, groupid)VALUES(?,?)");
        insertQuery.setParameter(0, this.u.getUserid());
        insertQuery.setParameter(1, "klient");
        insertQuery.executeUpdate();
        tx.commit();
    } catch (HibernateException e) {
        if (tx != null) {
            tx.rollback();
        }
        e.printStackTrace();
    } finally {
        session.close();
    }
    return "/faces/klient/welcome.xhtml";
}

From source file:controller.KoszykController.java

public String sprzedajKoszyk(ArrayList<Produkt> koszyk) {
    SessionFactory sf = SklepHibernateUtil.getSessionFactory();
    Session session = sf.openSession();/*  w  w  w .ja  v  a  2  s . c  om*/
    Transaction tx = null;
    String userid = FacesContext.getCurrentInstance().getExternalContext().getUserPrincipal().getName();
    try {
        for (int i = 0; i < koszyk.size(); i++) {
            if (koszyk.get(i).getLiczbaSztuk() > this.searchLS(koszyk.get(i).getIdProduktu())) {
                throw new HibernateException("Brak tylu produktow.");
            }
            tx = session.beginTransaction();
            SQLQuery insertQuery = session.createSQLQuery(
                    "INSERT INTO Sprzedaz(id_produktu,userid,liczba_sztuk_sprzedanych,kwota)VALUES(?,?,?,?)");
            insertQuery.setParameter(0, koszyk.get(i).getIdProduktu());
            insertQuery.setParameter(1, userid);
            insertQuery.setParameter(2, koszyk.get(i).getLiczbaSztuk());
            insertQuery.setParameter(3, koszyk.get(i).getCena() * koszyk.get(i).getLiczbaSztuk());
            insertQuery.executeUpdate();
            tx.commit();
            tx = session.beginTransaction();
            Integer minus_sztuki = koszyk.get(i).getLiczbaSztuk();
            SQLQuery removeQuery = session
                    .createSQLQuery("Update Produkt set liczba_sztuk = liczba_sztuk - ? where id_produktu = ?");
            removeQuery.setParameter(0, minus_sztuki);
            removeQuery.setParameter(1, koszyk.get(i).getIdProduktu());
            removeQuery.executeUpdate();
            tx.commit();
        }
    } catch (HibernateException e) {
        if (tx != null) {
            tx.rollback();
        }
        e.printStackTrace();
    } finally {
        session.close();
    }
    this.suma = 0.0;
    this.koszyk = new ArrayList();
    return "/faces/klient/welcome.xhtml";
}

From source file:dao.AdDao.java

public List<Ad> getAdsByUser(Long userId) {
    String sql = "select * from ad where author_id=:userId and date_to>:now and :now>date_from";
    SQLQuery query = getCurrentSession().createSQLQuery(sql);
    query.setParameter("userId", userId);
    query.setParameter("now", new Date());
    query.addEntity(Ad.class);
    return query.list();
}

From source file:dao.AdDao.java

public List<Ad> getChosenAds(Long userId) {
    String sql = "select a.* from chosen_ads ca left join ad a on ca.ad_id=a.ad_id where ca.user_id=:userId and a.date_to>:now and :now>a.date_from";
    SQLQuery query = getCurrentSession().createSQLQuery(sql);
    query.setParameter("userId", userId);
    query.setParameter("now", new Date());
    query.addEntity(Ad.class);
    return query.list();
}

From source file:dao.AdDao.java

public List<Ad> getSales(Long userId) {
    String sql = "select * from ad where author_id=:userId";
    SQLQuery query = getCurrentSession().createSQLQuery(sql);
    query.setParameter("userId", userId);
    query.addEntity(Ad.class);
    return query.list();
}

From source file:dao.AdDao.java

public List<Ad> getPurchases(Long userId) {
    String sql = "select * from ad where buyer_id=:userId order by sale_date";
    SQLQuery query = getCurrentSession().createSQLQuery(sql);
    query.setParameter("userId", userId);
    query.addEntity(Ad.class);
    return query.list();
}