数据访问对象(DAO)和存储库模式之间有什么区别?我正在开发一个使用Enterprise Java Beans(EJB3),Hibernate ORM作为基础架构,域驱动设计(DDD)和测试驱动开发(TDD)作为设计技术的应用程序.
domain-driven-design hibernate data-access-layer repository-pattern ejb-3.0
我正在尝试获取一个PlaceEntity. 我之前存储了一堆GooglePlaceEntity对象
@Entity
@Table(name = "place")
@Inheritance(
strategy = InheritanceType.JOINED
)
public class PlaceEntity extends AbstractTimestampEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
}
Run Code Online (Sandbox Code Playgroud)
和
@Entity
@Table(name = "google_place")
public class GooglePlaceEntity extends PlaceEntity {
// Additional fields ..
}
Run Code Online (Sandbox Code Playgroud)
但是,我既不想发送存储在其中的信息google_place,也不想加载不必要的信息。因此我只获取
@Entity
@Table(name = "google_place")
public class GooglePlaceEntity extends PlaceEntity {
// Additional fields ..
}
Run Code Online (Sandbox Code Playgroud)
我得到的是这样的:
public interface PlaceRepository extends JpaRepository<PlaceEntity, Long> {
@Query(value = "" +
"SELECT * " +
"FROM …Run Code Online (Sandbox Code Playgroud)