From a6ffe665da7d140cd8a959c2df722e3237ce6965 Mon Sep 17 00:00:00 2001 From: Cyril Lacote Date: Sat, 23 Jul 2011 00:21:41 +0200 Subject: [PATCH] Draft Hibernate integration. Not used yet (one new repository commented). --- pom.xml | 39 +++++++++++++++++-- .../gigreservation/domain/Ticketing.java | 8 ++++ .../HibernateTicketingRepository.java | 39 +++++++++++++++++++ .../internal/JdbcTicketingRepository.java | 2 +- .../config/xml/ticketorder-service-config.xml | 34 +++++++++------- src/main/resources/hibernate.cfg.xml | 18 +++++++++ 6 files changed, 121 insertions(+), 19 deletions(-) create mode 100644 src/main/java/com/programmez/samples/gigreservation/repository/internal/HibernateTicketingRepository.java create mode 100644 src/main/resources/hibernate.cfg.xml diff --git a/pom.xml b/pom.xml index 22fbf49..bf92489 100644 --- a/pom.xml +++ b/pom.xml @@ -72,6 +72,12 @@ ${spring.version} compile + + org.springframework + spring-orm + ${spring.version} + compile + log4j log4j @@ -103,17 +109,42 @@ 4.7 test + + org.mockito + mockito-all + 1.8.5 + test + - net.sf.ehcache - ehcache-core - 2.4.1 + org.hibernate + hibernate-core + ${hibernate.version} + + + + org.slf4j + slf4j-simple + 1.6.1 + + + + javassist + javassist + 3.12.1.GA + + + + net.sf.ehcache + ehcache-core + 2.4.1 - 3.1.0.M2 + 3.1.0.M2 + 3.6.6.Final UTF8 diff --git a/src/main/java/com/programmez/samples/gigreservation/domain/Ticketing.java b/src/main/java/com/programmez/samples/gigreservation/domain/Ticketing.java index e42a792..efa0071 100644 --- a/src/main/java/com/programmez/samples/gigreservation/domain/Ticketing.java +++ b/src/main/java/com/programmez/samples/gigreservation/domain/Ticketing.java @@ -1,13 +1,21 @@ package com.programmez.samples.gigreservation.domain; +import javax.persistence.Basic; +import javax.persistence.Entity; +import javax.persistence.Id; + /** * Ticketing * @author agnes007 */ +@Entity public class Ticketing { + @Id private Long id; + @Basic private Long nbTickets; + @Basic private String band; public Ticketing() { diff --git a/src/main/java/com/programmez/samples/gigreservation/repository/internal/HibernateTicketingRepository.java b/src/main/java/com/programmez/samples/gigreservation/repository/internal/HibernateTicketingRepository.java new file mode 100644 index 0000000..5ad6caf --- /dev/null +++ b/src/main/java/com/programmez/samples/gigreservation/repository/internal/HibernateTicketingRepository.java @@ -0,0 +1,39 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.programmez.samples.gigreservation.repository.internal; + +import com.programmez.samples.gigreservation.domain.Ticketing; +import com.programmez.samples.gigreservation.repository.TicketingRepository; +import java.util.List; +import org.hibernate.SessionFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Repository; + +/** + * + * @author Sryl + */ +// @Repository("hibernate") +public class HibernateTicketingRepository implements TicketingRepository { + + @Autowired + private SessionFactory sessionFactory; + + @Override + public Ticketing findById(Long ticketingId) { + return (Ticketing) sessionFactory.getCurrentSession().get(Ticketing.class, ticketingId); + } + + @Override + public void updateNbTickets(Ticketing ticketing) { + throw new UnsupportedOperationException("Not supported yet."); + } + + @Override + public List findByBand(String ticketingBand, boolean audit) { + throw new UnsupportedOperationException("Not supported yet."); + } + +} diff --git a/src/main/java/com/programmez/samples/gigreservation/repository/internal/JdbcTicketingRepository.java b/src/main/java/com/programmez/samples/gigreservation/repository/internal/JdbcTicketingRepository.java index 45817a1..fe2bb9f 100644 --- a/src/main/java/com/programmez/samples/gigreservation/repository/internal/JdbcTicketingRepository.java +++ b/src/main/java/com/programmez/samples/gigreservation/repository/internal/JdbcTicketingRepository.java @@ -21,7 +21,7 @@ * * @author agnes007 */ -@Repository +@Repository("jdbcTicketingRepository") public class JdbcTicketingRepository implements TicketingRepository { private JdbcTemplate jdbcTemplate; diff --git a/src/main/resources/com/programmez/samples/gigreservation/config/xml/ticketorder-service-config.xml b/src/main/resources/com/programmez/samples/gigreservation/config/xml/ticketorder-service-config.xml index 3343b0c..5f2ef9a 100644 --- a/src/main/resources/com/programmez/samples/gigreservation/config/xml/ticketorder-service-config.xml +++ b/src/main/resources/com/programmez/samples/gigreservation/config/xml/ticketorder-service-config.xml @@ -9,22 +9,28 @@ http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> - - + + - + - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/hibernate.cfg.xml b/src/main/resources/hibernate.cfg.xml new file mode 100644 index 0000000..1ff62b5 --- /dev/null +++ b/src/main/resources/hibernate.cfg.xml @@ -0,0 +1,18 @@ + + + + + + org.h2.Driver + jdbc:h2://localhost + + 1 + org.hibernate.dialect.H2Dialect + thread + org.hibernate.cache.NoCacheProvider + true + + update + + \ No newline at end of file