Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package domainClasses;
- import java.util.List;
- import java.util.Properties;
- import javax.persistence.EntityManager;
- import javax.persistence.EntityManagerFactory;
- import javax.persistence.Persistence;
- import javax.persistence.Query;
- import org.apache.commons.collections.CollectionUtils;
- public class Test {
- public static void main(String[] args) {
- // Задаем свойства для подключения к базе данных
- Properties props = new Properties();
- props.put("openjpa.ConnectionURL", "jdbc:postgresql:kyrsovaja//sample;create=true");
- props.put("openjpa.ConnectionDriverName", "org.postgresql.Driver");
- props.put("openjpa.ConnectionUserName", "postgres");
- props.put("openjpa.ConnectionPassword", "260690");
- // Создаем фабрику менеджеров
- EntityManagerFactory emf = Persistence.createEntityManagerFactory("Lab4", props);
- //saveEntities(emf);
- //readEntities(emf);
- }
- /**
- * Создаем одного студента и группу. Сохраняем объект группа. Объект
- * студента будет сохранен по каскаду. Сохранение происходит в отдельной
- * транзакции. Обратите внимание на обработку исключений и блок finally,
- * который будет обязательно выполнен. При возникновении исключения
- * происходит откат транзакции, а в блоке finally происходит завершение
- * работы с менеджером сущностей.
- *
- * @param emf Фабрика менеджеров
- */
- private static void saveEntities(EntityManagerFactory emf) {
- EntityManager em = emf.createEntityManager();
- em.getTransaction().begin();
- try {
- City city = new City();
- /*
- city.set_Name_("asdas");
- city.set_id_(22);
- city.set_Count_(23);
- city.set_Regoin_("4el9binsk");
- */
- supermarket.OrderList ord = new OrderList();
- ord.set_Count_(22);
- ord.set_id_(22);
- ord.set_Name_("sd");
- ord.set_No_(11);
- ord.set_Product_ID_(2);
- ord.set_Zakaz_ID_(2);
- /*
- Zakaz z = new Zakaz();
- z.set_id_(231);
- z.set_Summ_(2.33);
- z.set_Super_ID_(2);
- z.set_Supplier_ID_(1);
- z.setOrderLists(new TreeSet<OrderList>());
- z.getOrderLists().add(ord);
- OtchetProdaz o = new OtchetProdaz();
- o.set_Price_(2.34);
- o.set_Count_(345);
- o.set_id_(22);
- o.set_Super_ID_(2);
- */
- ord.set_Price_(2.23);
- ord.set_Product_ID_(1);
- ord.set_Zakaz_ID_(23);
- // Сохраняем группу. Студент будет сохранен по каскаду.
- em.persist(ord);
- // Подтверждаем транзакцию.
- em.getTransaction().commit();
- } catch (Exception e) {
- e.printStackTrace();
- // Откат транзакции в случае ошибки.
- em.getTransaction().rollback();
- } finally {
- // Завершение работы с менеджером сущностей.
- em.close();
- }
- }
- /**
- * Выполнение запроса и получение объектов группа
- * вместе с входящими в нее студентами.
- *
- * @param emf Фабрика менеджеров
- */
- private static void readEntities(EntityManagerFactory emf) {
- EntityManager em;
- em = emf.createEntityManager();
- em.getTransaction().begin();
- try {
- // Создаем объект запроса.
- Query query = em.createQuery("SELECT x FROM Product x");
- // Получаем результат запроса.
- List<?> list = query.getResultList();
- //org.apache.openjpa.persistence.
- // Проверяем результат на пустоту.
- if (CollectionUtils.isNotEmpty(list)) {
- // Выводим все группы и их студентов.
- for (Object object : list) {
- Product z = (Product) object;
- //Logger lg = Logger.getAnonymousLogger();
- Product pr = (Product) object;
- System.out.println("Product Name :" + pr.get_Name_());
- System.out.println("Product PRICE :" + pr.get_Price_O__());
- System.out.println("Product count :" + pr.get_Count_());
- for (OrderList or : pr.getOrderLists()){
- System.out.println("!!!!!!!!!!Order NAME: "+ or.get_Name_());
- }
- City cit = (City) object;
- System.out.println("City Name: " + cit.get_Name_());
- System.out.println("City region: " + cit.get_Regoin_());
- OtchetProdaz group = (OtchetProdaz) object;
- System.out.println("price: " + group.get_Price_());
- System.out.println("cnt " + group.get_Count_());
- System.out.println("date " + group.get_Date_().toLocaleString());
- }
- } else {
- System.out.println("No groups");
- }
- em.getTransaction().commit();
- } catch (Exception e) {
- e.printStackTrace();
- //System.out.println(e.getMessage());
- //System.out.println("TYTTTTTTTTTTT");
- // Откат транзакции в случае ошибки.
- em.getTransaction().rollback();
- } finally {
- // Завершение работы с менеджером сущностей.
- em.close();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement