将@Configuration 文件指向hbm.xml

Point @Configuration file to hbm.xml

我有一个库,其中包含一些我想使用休眠保存在我的数据库中的对象。

我最终为每个对象制作了 hbm.xml 个文件。现在我有了 AppConfig class

@Configuration
@ComponentScan("some.company")
@EnableAutoConfiguration(exclude = HibernateJpaAutoConfiguration.class)
@EnableTransactionManagement
public class AppConfig
        extends WebMvcConfigurerAdapter
{
    @Bean(name = "dataSource")
    public DataSource dataSource()
    {
        DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setUrl("jdbc:mysql://localhost:3306/somedatabase");
        dataSource.setUsername("user");
        dataSource.setPassword("password");
        return dataSource;
    }

    @Bean(name = "sessionFactory")
    public LocalSessionFactoryBean sessionFactory()
    {
        LocalSessionFactoryBean localSession = new LocalSessionFactoryBean();
        localSession.setDataSource(dataSource());
        return localSession;
    }

    @Bean(name = "transactionManager")
    public HibernateTransactionManager transactionManager()
    {
        return new HibernateTransactionManager(sessionFactory().getObject());
    }
}

如何将它指向我新创建的 hbm.xml 个文件?

或者如果这不可能,那么我将如何为我没有写入权限的对象创建休眠映射?
唯一的限制是我无法编写我的应用程序配置在 xml 中,有太多现在无法移动到 xml 的内容。

务实地说,我会选择:

@Bean(name = "sessionFactory")
public LocalSessionFactoryBean sessionFactory() {
    LocalSessionFactoryBean localSession = new LocalSessionFactoryBean();
    localSession.setDataSource(dataSource());

    localSession.setMappingResources("my.hmb.xml", "files.hbm.xml");

    return localSession;
}

(当 hbm 文件位于 class 路径的根目录时 - 例如 src/main/resources