Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package model;
- import java.sql.Date;
- import java.util.List;
- import javax.persistence.EntityManager;
- import javax.persistence.EntityManagerFactory;
- import javax.persistence.EntityTransaction;
- import javax.persistence.Persistence;
- import javax.persistence.Query;
- import javax.persistence.TypedQuery;
- public class CustomerFacade {
- private EntityManager em;
- private EntityManagerFactory emf;
- public CustomerFacade(EntityManager em, EntityManagerFactory emf) {
- this.em=em;
- this.emf=emf;
- }
- private void openEntityManager(){
- this.emf = Persistence.createEntityManagerFactory("model-unit");
- this.em = emf.createEntityManager();
- }
- private void closeEntityManager(){
- this.em.close();
- this.emf.close();
- }
- public Customer insertNewCustomer(String firstName, String lastName, Date dateOfBirth, Address address, List<Order> orders,
- String email, String phoneNumber, Date registrationDate){
- this.openEntityManager();
- Customer customer = new Customer(firstName, lastName, dateOfBirth, address, orders, email, phoneNumber, registrationDate);
- customer.setOrders(orders);
- //Rendo persistente l'oggetto customer
- EntityTransaction t = this.em.getTransaction();
- t.begin();
- this.em.persist(customer);
- t.commit();
- this.closeEntityManager();
- return customer;
- }
- public List<Customer> viewAll(){
- this.openEntityManager();
- TypedQuery<Customer> q= this.em.createNamedQuery("findAllCustomers", Customer.class);
- return q.getResultList();
- }
- //Lista degli ordini di un cliente presente nel sistema
- @SuppressWarnings("unchecked")
- public List<Order> getOrders(Long id){
- this.openEntityManager();
- Query q = this.em.createNamedQuery("findAllOrders", Order.class);
- return q.getResultList();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement