弹簧数据,如JEE6的功能

时间:2013-05-09 21:58:08

标签: spring jpa java-ee-6 data-access-layer spring-data

我有主要在Spring Framework上构建应用程序的经验。我想知道在JEE6空间中是否有类似于Spring Data API(以支持数据访问层)的东西?

我知道我可以在实体经理中接线:

@PersistenceContext 
EntityManager em;

理想情况下,我想避免在数据访问bean上编写大量的锅炉板JPA代码,这是一个类似于SpringJPA的API,可以帮助减少样板代码的数量,如findAll(),findByX()等。例如,使用SpringJPA,我可以将bean定义为:

@Repository
public interface FooRepository 
    extends JpaRepository<Foo, String>
{

}

而在香草JEE6中,我需要一个

  • 具有方法Foo findOne(Long)List<Foo> findAll()
  • 的FooRepository接口
  • 实现接口并与EntityManager交互的FooRepositoryImpl

1 个答案:

答案 0 :(得分:1)

Spring Data JPA附带一个CDI扩展,只需@Inject一个存储库到CDI托管bean中。有关详细信息,请参阅reference documentation。该方法仍然需要类路径上的Spring JAR,但没有容器被引导。此功能也适用于MongoDB存储库。