[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