如何设置Spring+;休眠依赖注入? 我有一个来自C++/C++的java到Neb到.< /P>
我的项目当前设置如下:如何设置Spring+;休眠依赖注入? 我有一个来自C++/C++的java到Neb到.< /P>,java,spring,hibernate,spring-boot,Java,Spring,Hibernate,Spring Boot,我的项目当前设置如下: org.blah.config HibernateConfig.java org.blah.customer Customer.java CustomerController.java CustomerService.java HibernateConfig设置hibernate内容并公开LocalSessionFactoryBean CustomerController是REST入口点,它实际上没有太多逻辑,它只是包装了CustomerService.
org.blah.config
HibernateConfig.java
org.blah.customer
Customer.java
CustomerController.java
CustomerService.java
HibernateConfig设置hibernate内容并公开LocalSessionFactoryBean
CustomerController是REST入口点,它实际上没有太多逻辑,它只是包装了CustomerService.java(或者我应该称之为CustomerRepository?)
java(或CustomerRepository?)包装数据库内容。在这里,我有:
@Autowired
private SessionFactory sessionFactory;
在我的CustomerController中,如果我这样做:
private CustomerService customerService = new CustomerService();
它不会注入sessionFactory
从我发现的一些示例中,人们似乎在HibernateConfig中创建了CustomerService bean,然后将其注入控制器的构造函数中。这是个好习惯吗?然后我会将我的HibernateConfig重命名为更具体的名称,比如CustomerHibernateConfig,等等
只是想了解如何/在何处放置配置并创建服务/repo实例,以便将其注入控制器。这是一个很难用几句话回答的问题。您要求的是一个很大程度上取决于所选设计模式的整体架构,但考虑到您有控制器和服务,让我这样说吧。MVS只是一种简化,并不是一种完美的方法。这将引发更多类似的问题
- 控制器应该有多少逻辑
- 模型应该包含任何逻辑吗
- 视图应该包含逻辑吗
DAO
,这是一种设计模式,定义了一种将应用程序的持久层解耦的方法。这就是您所理解的存储库
话虽如此,您只需要一个HibernateConfiguration,并在与该模型相关的每个模型或XML文件中进行相应的映射。我建议使用注释
而不是XML文件
如果您想学习如何实现一个使用Hibernate的Spring项目,您可以通过以下步骤看到它是多么容易。该页面确实有关于Spring使用的最佳指南。您应该看看Spring JPA入门指南;您根本不需要任何Hibernate配置,应该使用JPA接口,而不是传统的Hibernate特定接口
spring boot starter数据jpa
是您的朋友。感谢Alain,另一位推荐使用jpa的评论员。试图弄清楚现在什么是首选的方法。显然,我不能学到所有东西,所以我只想学习最新和最棒的:)。我一直在使用Baeldung的网站。你指给我看的教程是“最新和最好的”:?是的,有很多,所以你必须选择最适合你的。在这里,看看这个链接,它将帮助您做出决定。请记住,Hibernate是一个JPA实现,有助于简化工作。