[jboss-cvs] JBossAS SVN: r100131 - in projects/snowdrop/examples/trunk/sportsclub: sportsclub-hibernate-dao and 20 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Jan 29 11:21:35 EST 2010
Author: lvlcek at redhat.com
Date: 2010-01-29 11:21:34 -0500 (Fri, 29 Jan 2010)
New Revision: 100131
Added:
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/pom.xml
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPersonRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/resources/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/
Modified:
projects/snowdrop/examples/trunk/sportsclub/pom.xml
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/pom.xml
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateRepository.java
Log:
Added JPA implementation of DAO (initial commit)
Modified: projects/snowdrop/examples/trunk/sportsclub/pom.xml
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/pom.xml 2010-01-29 16:04:52 UTC (rev 100130)
+++ projects/snowdrop/examples/trunk/sportsclub/pom.xml 2010-01-29 16:21:34 UTC (rev 100131)
@@ -13,6 +13,7 @@
<module>sportsclub-subscriptions-web</module>
<module>sportsclub-ear</module>
<module>sportsclub-hibernate-dao</module>
+ <module>sportsclub-jpa-dao</module>
<module>sportsclub-reservations-web</module>
<module>sportsclub-reservations-spring</module>
<module>sportsclub-test-infrastructure</module>
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/pom.xml
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/pom.xml 2010-01-29 16:04:52 UTC (rev 100130)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/pom.xml 2010-01-29 16:21:34 UTC (rev 100131)
@@ -12,7 +12,7 @@
<groupId>org.jboss.snowdrop.samples.sportsclub</groupId>
<artifactId>sportsclub-hibernate-dao</artifactId>
<version>1.0-SNAPSHOT</version>
- <name>Sports Club Sample Hibernate DAO</name>
+ <name>Sports Club Hibernate DAO</name>
<dependencies>
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateRepository.java 2010-01-29 16:04:52 UTC (rev 100130)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateRepository.java 2010-01-29 16:21:34 UTC (rev 100131)
@@ -9,6 +9,8 @@
import java.util.Collection;
/**
+ * Abstract repository using Hibernate SessionFactory.
+ *
* @author <a href="mailto:mariusb at redhat.com">Marius Bogoevici</a>
*/
public abstract class HibernateRepository<T, I extends Serializable> implements Repository<T, I>
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/pom.xml
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/pom.xml (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/pom.xml 2010-01-29 16:21:34 UTC (rev 100131)
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>sportsclub-parent</artifactId>
+ <groupId>org.jboss.snowdrop.samples.sportsclub</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.jboss.snowdrop.samples.sportsclub</groupId>
+ <artifactId>sportsclub-jpa-dao</artifactId>
+ <packaging>jar</packaging>
+ <version>1.0-SNAPSHOT</version>
+ <name>Sports Club JPA DAO</name>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.snowdrop.samples.sportsclub</groupId>
+ <artifactId>sportsclub-domain</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.snowdrop.samples.sportsclub</groupId>
+ <artifactId>sportsclub-test-infrastructure</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+</project>
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPersonRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPersonRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPersonRepository.java 2010-01-29 16:21:34 UTC (rev 100131)
@@ -0,0 +1,15 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Person;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.PersonRepository;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+public class JpaPersonRepository extends JpaRepository<Person, Integer> implements PersonRepository
+{
+ public JpaPersonRepository()
+ {
+ super(Person.class);
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaRepository.java 2010-01-29 16:21:34 UTC (rev 100131)
@@ -0,0 +1,52 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.Repository;
+import org.hibernate.Session;
+
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import java.io.Serializable;
+import java.util.Collection;
+
+/**
+ * Abstract repository using JPA EntityManager.
+ *
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+public abstract class JpaRepository<T, I extends Serializable> implements Repository<T, I>
+{
+ @PersistenceContext
+ protected EntityManager entityManager;
+
+ Class<T> clazz;
+
+ public JpaRepository(Class<T> clazz)
+ {
+ this.clazz = clazz;
+ }
+
+ public T findById(I id)
+ {
+ return this.entityManager.find(clazz, id);
+ }
+
+ public void save(T object)
+ {
+ this.entityManager.persist(object);
+ }
+
+ public void delete(T object)
+ {
+ this.entityManager.remove(object);
+ }
+
+ public Collection<T> findAll()
+ {
+ return entityManager.createQuery("FROM " + clazz.getName()).getResultList();
+ }
+
+ public int countAll()
+ {
+ return (Integer)entityManager.createQuery("SELECT COUNT(c) FROM " + clazz.getName() + " c").getSingleResult();
+ }
+}
More information about the jboss-cvs-commits
mailing list