New*_*bie 3 spring spring-java-config
我正在学习如何构建JSF和Spring集成的webapp.我正在使用java配置进行配置.问题是@EnableJpaRepositories,我应该在这个注释中添加哪个包?包中包含实体类?还是配置类?要么?我可以将我的root包放入其中并让它自己搜索吗?
EnableJpaRepositories - 仅用于存储库,不用于实体或配置.此注释的主要目标是查找所有存储库.
您可以以几种方式配置jpa存储库(取决于您的项目中的包结构),
@EnableJpaRepositories - 在这种情况下,spring解析所有包以查找存储库.
@EnableJpaRepositories(basePackages="root package") - 与...一样
@EnableJpaRepositories
@EnableJpaRepositories(basePackages="path.to.repositories.package") - 在这种情况下,spring只解析'path.to.repositories.package'包和子包来查找存储库.
如果您有包装结构,com.some.path.repositories或者com.some.path.dao您可以@EnableJpaRepositories(basePackages="com.some.path.dao or repositories")
如果你有更复杂的结构一样com.some.path.domain1.repositories,com.some.path.domain2.repositories.... com.some.path.domainN.repositories
你可以使用配置@EnableJpaRepositories(basePackages="com.some.path")或使用多组配置值configuretion(下一节),因为你有不同的独立的包,你需要找到顶包所有子包,并把它作为basePackages.在许多情况下,要查找所有存储库的顶级公共basePackage可能与使用default/root包相同@EnableJpaRepositories
或者,如果您有几个包,则可以使用多组配置值@EnableJpaRepositories({"com.some.path.domain1.repositories","com.some.path.domain2.repositories"}).在这不需要使用通用的根包,但如果你有10-20个单独的包,可能最好使用通用包.
PS:@EnableJpaRepositories具有basePackages()属性的别名.允许更简洁的注释声明,例如:@EnableJpaRepositories("org.my.pkg")而不是@EnableJpaRepositories(basePackages ="org.my.pkg").
| 归档时间: |
|
| 查看次数: |
3877 次 |
| 最近记录: |