Advertisement
Guest User

Untitled

a guest
Jul 29th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.49 KB | None | 0 0
  1. package domainClasses;
  2.  
  3. import java.util.List;
  4. import java.util.Properties;
  5.  
  6. import javax.persistence.EntityManager;
  7. import javax.persistence.EntityManagerFactory;
  8. import javax.persistence.Persistence;
  9. import javax.persistence.Query;
  10.  
  11. import org.apache.commons.collections.CollectionUtils;
  12.  
  13. public class Test {
  14.  
  15.     public static void main(String[] args) {
  16.  
  17.         // Задаем свойства для подключения к базе данных
  18.         Properties props = new Properties();
  19.         props.put("openjpa.ConnectionURL", "jdbc:postgresql:kyrsovaja//sample;create=true");
  20.         props.put("openjpa.ConnectionDriverName", "org.postgresql.Driver");
  21.         props.put("openjpa.ConnectionUserName", "postgres");
  22.         props.put("openjpa.ConnectionPassword", "260690");
  23.  
  24.         // Создаем фабрику менеджеров
  25.         EntityManagerFactory emf = Persistence.createEntityManagerFactory("Lab4", props);
  26.  
  27.         //saveEntities(emf);
  28.         //readEntities(emf);
  29.        
  30.     }
  31.  
  32.     /**
  33.      * Создаем одного студента и группу. Сохраняем объект группа. Объект
  34.      * студента будет сохранен по каскаду. Сохранение происходит в отдельной
  35.      * транзакции. Обратите внимание на обработку исключений и блок finally,
  36.      * который будет обязательно выполнен. При возникновении исключения
  37.      * происходит откат транзакции, а в блоке finally происходит завершение
  38.      * работы с менеджером сущностей.
  39.      *
  40.      * @param emf   Фабрика менеджеров
  41.      */
  42.     private static void saveEntities(EntityManagerFactory emf) {
  43.         EntityManager em = emf.createEntityManager();
  44.         em.getTransaction().begin();
  45.        
  46.         try {
  47.            
  48.             City city = new City();
  49.            
  50.             /*
  51.             city.set_Name_("asdas");
  52.             city.set_id_(22);
  53.             city.set_Count_(23);
  54.             city.set_Regoin_("4el9binsk");
  55.             */
  56.        
  57.             supermarket.OrderList ord = new OrderList();
  58.             ord.set_Count_(22);
  59.             ord.set_id_(22);
  60.             ord.set_Name_("sd");
  61.            
  62.             ord.set_No_(11);
  63.             ord.set_Product_ID_(2);
  64.             ord.set_Zakaz_ID_(2);
  65.            
  66.             /*
  67.             Zakaz z = new Zakaz();
  68.             z.set_id_(231);
  69.             z.set_Summ_(2.33);
  70.             z.set_Super_ID_(2);
  71.             z.set_Supplier_ID_(1);
  72.             z.setOrderLists(new TreeSet<OrderList>());
  73.             z.getOrderLists().add(ord);
  74.            
  75.            
  76.            
  77.             OtchetProdaz o = new OtchetProdaz();
  78.             o.set_Price_(2.34);
  79.             o.set_Count_(345);
  80.             o.set_id_(22);
  81.             o.set_Super_ID_(2);
  82.  
  83.             */
  84.            
  85.             ord.set_Price_(2.23);
  86.             ord.set_Product_ID_(1);
  87.             ord.set_Zakaz_ID_(23);
  88.            
  89.            
  90.             // Сохраняем группу. Студент будет сохранен по каскаду.
  91.             em.persist(ord);
  92.            
  93.             // Подтверждаем транзакцию.
  94.             em.getTransaction().commit();
  95.            
  96.         } catch (Exception e) {
  97.             e.printStackTrace();
  98.  
  99.             // Откат транзакции в случае ошибки.
  100.             em.getTransaction().rollback();
  101.         } finally {
  102.  
  103.             // Завершение работы с менеджером сущностей.
  104.             em.close();
  105.         }
  106.     }
  107.    
  108.     /**
  109.      * Выполнение запроса и получение объектов группа
  110.      * вместе с входящими в нее студентами.
  111.      *
  112.      * @param emf      Фабрика менеджеров
  113.      */
  114.     private static void readEntities(EntityManagerFactory emf) {
  115.         EntityManager em;
  116.         em = emf.createEntityManager();
  117.         em.getTransaction().begin();
  118.        
  119.         try {
  120.            
  121.             // Создаем объект запроса.
  122.             Query query = em.createQuery("SELECT x FROM Product x");
  123.  
  124.            
  125.            
  126.             // Получаем результат запроса.
  127.             List<?> list = query.getResultList();
  128.             //org.apache.openjpa.persistence.
  129.            
  130.             // Проверяем результат на пустоту.
  131.             if (CollectionUtils.isNotEmpty(list)) {
  132.                
  133.                 // Выводим все группы и их студентов.
  134.            
  135.                 for (Object object : list) {
  136.                
  137.                     Product z = (Product) object;
  138.                    
  139.                    
  140.             //Logger lg = Logger.getAnonymousLogger();
  141.                    
  142.                     Product pr = (Product) object;
  143.                    
  144.                     System.out.println("Product Name :" + pr.get_Name_());
  145.                     System.out.println("Product PRICE :" + pr.get_Price_O__());
  146.                     System.out.println("Product count :" + pr.get_Count_());
  147.                    
  148.                     for (OrderList or : pr.getOrderLists()){
  149.                     System.out.println("!!!!!!!!!!Order NAME: "+ or.get_Name_());
  150.                     }
  151.                    
  152.                    
  153.                    
  154.                     City cit = (City) object;
  155.                     System.out.println("City Name: " + cit.get_Name_());
  156.                     System.out.println("City  region: " + cit.get_Regoin_());
  157.                    
  158.                    
  159.                                        
  160.                     OtchetProdaz group = (OtchetProdaz) object;
  161.                     System.out.println("price: " + group.get_Price_());
  162.                     System.out.println("cnt " + group.get_Count_());
  163.                     System.out.println("date " + group.get_Date_().toLocaleString());
  164.                    
  165.                    
  166.                    
  167.                    
  168.                 }
  169.                
  170.             } else {
  171.                 System.out.println("No groups");
  172.             }
  173.            
  174.             em.getTransaction().commit();
  175.            
  176.         } catch (Exception e) {
  177.             e.printStackTrace();
  178.             //System.out.println(e.getMessage());
  179.             //System.out.println("TYTTTTTTTTTTT");
  180.             // Откат транзакции в случае ошибки.
  181.             em.getTransaction().rollback();
  182.         } finally {
  183.  
  184.             // Завершение работы с менеджером сущностей.
  185.             em.close();
  186.         }
  187.     }
  188. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement