我可以像这样创建sessionfactory bean。
@Configuration
public class HibernateConfig {
private EntityManagerFactory emf;
@Bean
public HibernateJpaSessionFactoryBean sessionFactory() {
HibernateJpaSessionFactoryBean fact = new HibernateJpaSessionFactoryBean();
fact.setEntityManagerFactory(emf);
return fact;
}
@Autowired
public HibernateConfig(EntityManagerFactory emf) {
this.emf = emf;
}
}
但是,使用带有jar的类路径或列出hbm.xml文件的@EntityScan或@code仍然不能生成托管类型:classcom.opensymphony.workflow.spi.hibernate.HibernateMONtStep
我看到了一些答案,您使用不同的类来生成sessionFactory bean。有没有一种简单的方法可以获取实体管理器创建中包含的映射文件?
我能够扫描hbm。xml文件
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource) {
LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean();
em.setDataSource(dataSource);
em.setPackagesToScan("com.foo.bar.domain");
em.setMappingResources("classpath:x/HibernateCurrentStep.hbm.xml",
"classpath:x/HibernateHistoryStep.hbm.xml",
"classpath:x/HibernateWorkflowEntry.hbm.xml");
HibernateJpaVendorAdapter vendor = new HibernateJpaVendorAdapter();
vendor.setShowSql(false);
em.setJpaVendorAdapter(vendor);
return em;
}
但是,然后任何使用会话工厂的事务都将获得未配置MONtSessionContext!
而基本的Spring repo方法仍然有效。
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource) {
LocalContainerEntityManagerFactoryBean em = new
LocalContainerEntityManagerFactoryBean();
em.setDataSource(dataSource);
em.setPackagesToScan("com.foo.bar.domain");
em.setMappingResources("com/opensymphony/workflow/spi/hibernate3/HibernateCurrentStep.hbm.xml",
"com/opensymphony/workflow/spi/hibernate3/HibernateHistoryStep.hbm.xml",
"com/opensymphony/workflow/spi/hibernate3/HibernateWorkflowEntry.hbm.xml");
//these needed to be added to have all hibernate config done in one place.
em.getJpaPropertyMap().put(AvailableSettings.CURRENT_SESSION_CONTEXT_CLASS,
SpringSessionContext.class.getName());
em.getJpaPropertyMap().put(AvailableSettings.DIALECT,
PostgreSQL9Dialect.class.getName());
HibernateJpaVendorAdapter vendor = new HibernateJpaVendorAdapter();
vendor.setShowSql(false);
em.setJpaVendorAdapter(vendor);
return em;
}
我正在尝试开发一个游戏插件(oldschool runescape)。我正在尝试加入组织。json,以便更容易读取/写入游戏状态和内容,但似乎不知道如何将其发送到package org。json和我的插件。它可以很好地编译,但不能与该包一起运行。有什么帮助吗? 这就是我的插件。格雷德尔。kts看起来像 编辑:我尝试了compileOnly、implementation、testImplementa
我正在开发一个Java项目,使用maven作为依赖项管理器/构建工具。我当前在将依赖项的依赖项解析到正确版本时遇到问题。 有问题的依赖项称为JasperReports-Functions-6.1.0.jar,它不是托管在maven repo中,而是以jar形式提供的。 如何强制jar依赖项使用子依赖项的某个版本?
我正试图让maven下载所有的依赖项(编译、测试、插件等)。)这样我就可以避免让我们的dockerized构建浪费不必要的时间一遍又一遍地下载它们。 我们已经对maven build进行了dockerized,这样我们就可以从jenkins运行它,而无需在jenkins机器上安装大量构建特定的依赖项(Java、redis、maven依赖项等)。我们的构建依赖于增量docker构建,它只执行实际需要
Gradle 支持从 Maven 或 Ivy 仓库中拉取依赖文件。首先必须将仓库添加到列表中,然后必须在 dependencies 中添加 Maven 或 Ivy 声明的包。 repositories { jcenter() } dependencies { compile 'com.google.guava:guava:18.0' } android { ... } 注意
配置 jar 包需要在 compile 中添加响应依赖。下面的代码添加了 libs 文件夹中的所有 jar 作为依赖。 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) } android { ... } 注意:dependencies DSL 标签是标准 Gradle API 中的一部分,所以它不属于
问题内容: 我正在尝试用Spring 3.0(和Maven)做我的第一个项目。我已经在许多项目中使用Spring 2.5(和入门版本)。尽管如此,我还是有些困惑,我必须在pom.xml中将哪些模块定义为依赖项。我只想使用核心容器功能(bean,核心,上下文,el)。 我曾经这样做: 但是现在我有点困惑,因为不再有用于3.0版的完整包装的spring模块。我尝试了以下操作,但是没有用(缺少某些类)。