diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IChildDao.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IChildDao.java new file mode 100644 index 0000000000..0a2180bed3 --- /dev/null +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IChildDao.java @@ -0,0 +1,8 @@ +package org.baeldung.spring.persistence.dao; + +import org.baeldung.spring.persistence.dao.common.IOperations; +import org.baeldung.spring.persistence.model.Child; + +public interface IChildDao extends IOperations { + // +} diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IFooDao.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IFooDao.java index eea1f17b5a..646b3af228 100644 --- a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IFooDao.java +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IFooDao.java @@ -1,5 +1,6 @@ package org.baeldung.spring.persistence.dao; +import org.baeldung.spring.persistence.dao.common.IOperations; import org.baeldung.spring.persistence.model.Foo; public interface IFooDao extends IOperations { diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IOwnerDao.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IOwnerDao.java new file mode 100644 index 0000000000..beda164935 --- /dev/null +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IOwnerDao.java @@ -0,0 +1,8 @@ +package org.baeldung.spring.persistence.dao; + +import org.baeldung.spring.persistence.dao.common.IOperations; +import org.baeldung.spring.persistence.model.Owner; + +public interface IOwnerDao extends IOperations { + // +} diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/AbstractHibernateDao.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/common/AbstractHibernateDao.java similarity index 96% rename from spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/AbstractHibernateDao.java rename to spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/common/AbstractHibernateDao.java index 0ff6307147..25d14cd697 100644 --- a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/AbstractHibernateDao.java +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/common/AbstractHibernateDao.java @@ -1,4 +1,4 @@ -package org.baeldung.spring.persistence.dao; +package org.baeldung.spring.persistence.dao.common; import java.io.Serializable; import java.util.List; diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IOperations.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/common/IOperations.java similarity index 85% rename from spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IOperations.java rename to spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/common/IOperations.java index d2cb0a9cef..716bd40e9b 100644 --- a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/IOperations.java +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/common/IOperations.java @@ -1,4 +1,4 @@ -package org.baeldung.spring.persistence.dao; +package org.baeldung.spring.persistence.dao.common; import java.io.Serializable; import java.util.List; diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/ChildDao.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/ChildDao.java new file mode 100644 index 0000000000..380787823c --- /dev/null +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/ChildDao.java @@ -0,0 +1,24 @@ +package org.baeldung.spring.persistence.dao.impl; + +import org.baeldung.spring.persistence.dao.IChildDao; +import org.baeldung.spring.persistence.dao.common.AbstractHibernateDao; +import org.baeldung.spring.persistence.model.Child; +import org.hibernate.SessionFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Repository; + +@Repository +public class ChildDao extends AbstractHibernateDao implements IChildDao { + + @Autowired + private SessionFactory sessionFactory; + + public ChildDao() { + super(); + + setClazz(Child.class); + } + + // API + +} diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/FooDao.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/FooDao.java similarity index 71% rename from spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/FooDao.java rename to spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/FooDao.java index 1efa61ffb2..c083b41799 100644 --- a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/FooDao.java +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/FooDao.java @@ -1,5 +1,7 @@ -package org.baeldung.spring.persistence.dao; +package org.baeldung.spring.persistence.dao.impl; +import org.baeldung.spring.persistence.dao.IFooDao; +import org.baeldung.spring.persistence.dao.common.AbstractHibernateDao; import org.baeldung.spring.persistence.model.Foo; import org.hibernate.SessionFactory; import org.springframework.beans.factory.annotation.Autowired; diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/OwnerDao.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/OwnerDao.java new file mode 100644 index 0000000000..a9156d06cf --- /dev/null +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/dao/impl/OwnerDao.java @@ -0,0 +1,24 @@ +package org.baeldung.spring.persistence.dao.impl; + +import org.baeldung.spring.persistence.dao.IOwnerDao; +import org.baeldung.spring.persistence.dao.common.AbstractHibernateDao; +import org.baeldung.spring.persistence.model.Owner; +import org.hibernate.SessionFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Repository; + +@Repository +public class OwnerDao extends AbstractHibernateDao implements IOwnerDao { + + @Autowired + private SessionFactory sessionFactory; + + public OwnerDao() { + super(); + + setClazz(Owner.class); + } + + // API + +} diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/model/Child.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/model/Child.java new file mode 100644 index 0000000000..123ab2ac17 --- /dev/null +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/model/Child.java @@ -0,0 +1,30 @@ +package org.baeldung.spring.persistence.model; + +import java.io.Serializable; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; + +@Entity +public class Child implements Serializable { + + @Id + @GeneratedValue + private long id; + + public Child() { + super(); + } + + // API + + public long getId() { + return id; + } + + public void setId(final long id) { + this.id = id; + } + +} diff --git a/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/model/Owner.java b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/model/Owner.java new file mode 100644 index 0000000000..d2f8d36f44 --- /dev/null +++ b/spring-hibernate4/src/main/java/org/baeldung/spring/persistence/model/Owner.java @@ -0,0 +1,30 @@ +package org.baeldung.spring.persistence.model; + +import java.io.Serializable; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; + +@Entity +public class Owner implements Serializable { + + @Id + @GeneratedValue + private long id; + + public Owner() { + super(); + } + + // API + + public long getId() { + return id; + } + + public void setId(final long id) { + this.id = id; + } + +}