Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.andyshon;
- import org.hibernate.Query;
- import org.hibernate.Session;
- import javax.swing.*;
- import java.sql.SQLException;
- import java.util.ArrayList;
- import java.util.Collection;
- import java.util.List;
- import java.util.Set;
- import com.andyshon.Bus;
- import com.andyshon.Driver;
- import com.andyshon.Route;
- /**
- * Created by andys_000 on 02.10.2017.
- */
- public class BusDAOImpl implements BusDAO {
- public void addBus(Bus bus) throws SQLException {
- Session session = null;
- try {
- session = HibernateUtil.getSessionFactory().openSession();
- session.beginTransaction();
- session.save(bus);
- session.getTransaction().commit();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка при вставке", JOptionPane.OK_OPTION);
- } finally {
- if (session != null && session.isOpen()) {
- session.close();
- }
- }
- }
- public void updateBus(int bus_id, Bus bus) throws SQLException {
- Session session = null;
- try {
- session = HibernateUtil.getSessionFactory().openSession();
- session.beginTransaction();
- session.update(bus);
- session.getTransaction().commit();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка при вставке", JOptionPane.OK_OPTION);
- } finally {
- if (session != null && session.isOpen()) {
- session.close();
- }
- }
- }
- public Bus getBusById(int bus_id) throws SQLException {
- Session session = null;
- Bus bus = null;
- try {
- session = HibernateUtil.getSessionFactory().openSession();
- bus = (Bus)session.get(Bus.class, bus_id); // get, not load!
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка 'findById'", JOptionPane.OK_OPTION);
- } finally {
- if (session != null && session.isOpen()) {
- session.close();
- }
- }
- return bus;
- }
- public Collection getAllBusses() throws SQLException {
- Session session = null;
- List busses = new ArrayList<Bus>();
- try {
- session = HibernateUtil.getSessionFactory().openSession();
- busses = session.createCriteria(Bus.class).list();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка 'getAll'", JOptionPane.OK_OPTION);
- } finally {
- if (session != null && session.isOpen()) {
- session.close();
- }
- }
- return busses;
- }
- public void deleteBus(Bus bus) throws SQLException {
- Session session = null;
- try {
- session = HibernateUtil.getSessionFactory().openSession();
- session.beginTransaction();
- session.delete(bus);
- session.getTransaction().commit();
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка при удалении", JOptionPane.OK_OPTION);
- } finally {
- if (session != null && session.isOpen()) {
- session.close();
- }
- }
- }
- public Collection getBussesByDriver(Driver driver) throws SQLException {
- Session session = null;
- List busses = new ArrayList<Bus>();
- try {
- session = HibernateUtil.getSessionFactory().getCurrentSession();
- session.beginTransaction();
- int driver_id = driver.getId();
- //System.out.println("driver id=" + driver_id);
- Query query = session.createQuery(
- " select b "
- + " from Bus b INNER JOIN b.drivers driver"
- + " where driver.id = :driverId "
- )
- .setInteger("driverId", driver_id);
- busses = (List<Bus>) query.list();
- session.getTransaction().commit();
- } finally {
- if (session != null && session.isOpen()) {
- session.close();
- }
- }
- return busses;
- }
- public Collection getBussesByRoute(Route route){
- Session session = null;
- List busses = new ArrayList<Bus>();
- try {
- session = HibernateUtil.getSessionFactory().getCurrentSession();
- session.beginTransaction();
- int route_id = route.getId();
- Query query = session.createQuery("from Bus where route_id = :route_id ").setInteger("route_id", route_id);
- busses = (List<Bus>) query.list();
- session.getTransaction().commit();
- } finally {
- if (session != null && session.isOpen()) {
- session.close();
- }
- }
- return busses;
- }
- }
Add Comment
Please, Sign In to add comment