Нет подходящего bean-компонента типа javax.persistence.EntityManager: ожидался один соответствующий bean-компонент, но о ⇐ JAVA
-
Anonymous
Нет подходящего bean-компонента типа javax.persistence.EntityManager: ожидался один соответствующий bean-компонент, но о
У меня есть две конфигурации менеджера объектов для двух отдельных баз данных, но когда я пытаюсь автоматически подключить менеджер объектов для настройки моего bean-компонента GraphQLExecutor, я получаю исключение, сообщающее, что есть два bean-компонента, соответствующие критериям, хотя я указал имя модуля в PersistenceContext.
Исключение
org.springframework.beans.factory.BeanCreationException: ошибка создание bean-компонента с именем «graphQLExecutor»: внедрение ресурса зависимости не удалось; вложенное исключение org.springframework.beans.factory.NoUniqueBeanDefinitionException: Нет Доступен соответствующий bean-компонент типа javax.persistence.EntityManager: ожидался один соответствующий bean-компонент, но найдено 2: org.springframework.orm.jpa.SharedEntityManagerCreator#0,org.springframework.orm.jpa.SharedEntityManagerCreator#1 в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:321) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1264) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.run(SpringApplication.java:303) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в com.ogl.JpaDemoApplication.main(JpaDemoApplication.java:15) [классы/:na] Причина: org.springframework.beans.factory.NoUniqueBeanDefinitionException: Нет Доступен соответствующий bean-компонент типа javax.persistence.EntityManager: ожидался один соответствующий bean-компонент, но найдено 2: org.springframework.orm.jpa.SharedEntityManagerCreator#0,org.springframework.orm.jpa.SharedEntityManagerCreator#1 в org.springframework.beans.factory.config.DependencyDescriptor.resolveNotUnique(DependencyDescriptor.java:173) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1116) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:518) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:496) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:627) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:169) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:318) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] ... 17 обычных кадры опущены
Менеджер объекта 1
пакет com.ogl; импортировать org.springframework.beans.factory.annotation.Autowired; импортировать org.springframework.context.annotation.Bean; импортировать org.springframework.context.annotation.Configuration; импортировать org.springframework.core.env.Environment; импортировать org.springframework.data.jpa.repository.config.EnableJpaRepositories; импортировать org.springframework.jdbc.datasource.DriverManagerDataSource; импортировать org.springframework.orm.jpa.JpaTransactionManager; импортировать org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; импортировать org.springframework.orm.jpa.vendor.Database; импортировать org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; импортировать org.springframework.transaction.PlatformTransactionManager; импортировать javax.sql.DataSource; @Конфигурация @EnableJpaRepositories(basePackages = "com.ogl.system",entityManagerFactoryRef = "companyEntityManagerFactory",transactionManagerRef = "companyTransactionManager") общественный класс SystemJpaConfig { частная конечная среда окружающей среды; @Autowired public SystemJpaConfig (среда среды) { this.environment = окружающая среда; } @Bean("systemEntityManagerFactory") public LocalContainerEntityManagerFactoryBean systemEntityManagerFactory() { LocalContainerEntityManagerFactoryBeanentityManagerFactoryBean = новый LocalContainerEntityManagerFactoryBean(); entityManagerFactoryBean.setPackagesToScan("com.ogl.system"); entityManagerFactoryBean.setPersistenceUnitName("система"); entityManagerFactoryBean.setDataSource(systemDataSource()); Адаптер HibernateJpaVendorAdapter = новый HibernateJpaVendorAdapter(); адаптер.setDatabase(База данных.POSTGRESQL); адаптер.setShowSql(истина); адаптер.setGenerateDdl(ложь); entityManagerFactoryBean.setJpaVendorAdapter(адаптер); вернуть объектEntityManagerFactoryBean; } @Бин Источник данных DriverManagerDataSource dataSource = новый DriverManagerDataSource(); dataSource.setDriverClassName(environment.getProperty("p4.datasource.driver")); dataSource.setUrl(environment.getProperty("p4.system.url")); dataSource.setUsername(environment.getProperty("p4.system.user")); dataSource.setPassword(environment.getProperty("p4.system.password")); вернуть источник данных; } @Бин общественный PlatformTransactionManager systemTransactionManager () { JpaTransactionManagertransactionManager = новый JpaTransactionManager(); транзакцииManager.setEntityManagerFactory((systemEntityManagerFactory().getObject())); вернуть менеджер транзакции; } } Entity Manager 2
пакет com.ogl; импортировать org.springframework.beans.factory.annotation.Autowired; импортировать org.springframework.context.annotation.Bean; импортировать org.springframework.context.annotation.Configuration; импортировать org.springframework.core.env.Environment; импортировать org.springframework.data.jpa.repository.config.EnableJpaRepositories; импортировать org.springframework.jdbc.datasource.DriverManagerDataSource; импортировать org.springframework.orm.jpa.JpaTransactionManager; импортировать org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; импортировать org.springframework.orm.jpa.vendor.Database; импортировать org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; импортировать org.springframework.transaction.PlatformTransactionManager; импортировать javax.sql.DataSource; @Конфигурация @EnableJpaRepositories(basePackages = "com.ogl.company",entityManagerFactoryRef = "companyEntityManagerFactory", transactionManagerRef = "companyTransactionManager") общественный класс CompanyJpaConfig { частная конечная среда окружающей среды; @Autowired public CompanyJpaConfig (среда среды) { this.environment = окружающая среда; } @Начальный @Bean("companyEntityManagerFactory") public LocalContainerEntityManagerFactoryBean CompanyEntityManagerFactory() { LocalContainerEntityManagerFactoryBeanentityManagerFactoryBean = новый LocalContainerEntityManagerFactoryBean(); entityManagerFactoryBean.setPackagesToScan("com.ogl.company"); entityManagerFactoryBean.setPersistenceUnitName("компания"); entityManagerFactoryBean.setDataSource(companyDataSource()); Адаптер HibernateJpaVendorAdapter = новый HibernateJpaVendorAdapter(); адаптер.setDatabase(База данных.POSTGRESQL); адаптер.setShowSql(истина); адаптер.setGenerateDdl(ложь); entityManagerFactoryBean.setJpaVendorAdapter(адаптер); вернуть объектEntityManagerFactoryBean; } @Бин Источник данных компанииDataSource() { DriverManagerDataSource dataSource = новый DriverManagerDataSource(); dataSource.setDriverClassName(environment.getProperty("p4.datasource.driver")); dataSource.setUrl(environment.getProperty("p4.company.url")); dataSource.setUsername(environment.getProperty("p4.company.user")); dataSource.setPassword(environment.getProperty("p4.company.password")); вернуть источник данных; } @Начальный @Бин общественный PlatformTransactionManager CompanyTransactionManager () { JpaTransactionManagertransactionManager = новый JpaTransactionManager(); транзакцииManager.setEntityManagerFactory((companyEntityManagerFactory().getObject())); вернуть менеджер транзакции; } } Инъекция
пакет com.ogl; импортировать org.crygier.graphql.GraphQLExecutor; импортировать org.springframework.context.annotation.Bean; импортировать org.springframework.context.annotation.ComponentScan; импортировать org.springframework.context.annotation.Configuration; импортировать javax.persistence.EntityManager; импортировать javax.persistence.PersistenceContext; @Конфигурация @ComponentScan общественный класс GraphQLJpaConfig { @PersistenceContext(unitName = «компания») частный EntityManager EntityManager; @Бин общественный GraphQLExecutorgraphQLExecutor() { вернуть новый GraphQLExecutor(entityManager); } } pom.xml
4.0.0 com.ogl jpa-демо 0.0.1-SNAPSHOT банка jpa-демо Демо-проект для JPA org.springframework.boot spring-boot-starter-parent 1.5.4.РЕЛИЗ UTF-8 UTF-8 1.8 org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-web org.postgresql postgresql время выполнения org.springframework.boot spring-boot-starter-test тест com.graphql-java graphql-java 2.3.0 com.crygier graphql-jpa 0.3 org.springframework.boot spring-boot-maven-plugin
У меня есть две конфигурации менеджера объектов для двух отдельных баз данных, но когда я пытаюсь автоматически подключить менеджер объектов для настройки моего bean-компонента GraphQLExecutor, я получаю исключение, сообщающее, что есть два bean-компонента, соответствующие критериям, хотя я указал имя модуля в PersistenceContext.
Исключение
org.springframework.beans.factory.BeanCreationException: ошибка создание bean-компонента с именем «graphQLExecutor»: внедрение ресурса зависимости не удалось; вложенное исключение org.springframework.beans.factory.NoUniqueBeanDefinitionException: Нет Доступен соответствующий bean-компонент типа javax.persistence.EntityManager: ожидался один соответствующий bean-компонент, но найдено 2: org.springframework.orm.jpa.SharedEntityManagerCreator#0,org.springframework.orm.jpa.SharedEntityManagerCreator#1 в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:321) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1264) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.run(SpringApplication.java:303) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.4.RELEASE.jar:1.5.4.RELEASE] в com.ogl.JpaDemoApplication.main(JpaDemoApplication.java:15) [классы/:na] Причина: org.springframework.beans.factory.NoUniqueBeanDefinitionException: Нет Доступен соответствующий bean-компонент типа javax.persistence.EntityManager: ожидался один соответствующий bean-компонент, но найдено 2: org.springframework.orm.jpa.SharedEntityManagerCreator#0,org.springframework.orm.jpa.SharedEntityManagerCreator#1 в org.springframework.beans.factory.config.DependencyDescriptor.resolveNotUnique(DependencyDescriptor.java:173) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1116) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:518) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:496) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:627) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:169) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88) ~[spring-beans-4.3.9.RELEASE.jar:4.3.9.RELEASE] в org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:318) ~[spring-context-4.3.9.RELEASE.jar:4.3.9.RELEASE] ... 17 обычных кадры опущены
Менеджер объекта 1
пакет com.ogl; импортировать org.springframework.beans.factory.annotation.Autowired; импортировать org.springframework.context.annotation.Bean; импортировать org.springframework.context.annotation.Configuration; импортировать org.springframework.core.env.Environment; импортировать org.springframework.data.jpa.repository.config.EnableJpaRepositories; импортировать org.springframework.jdbc.datasource.DriverManagerDataSource; импортировать org.springframework.orm.jpa.JpaTransactionManager; импортировать org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; импортировать org.springframework.orm.jpa.vendor.Database; импортировать org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; импортировать org.springframework.transaction.PlatformTransactionManager; импортировать javax.sql.DataSource; @Конфигурация @EnableJpaRepositories(basePackages = "com.ogl.system",entityManagerFactoryRef = "companyEntityManagerFactory",transactionManagerRef = "companyTransactionManager") общественный класс SystemJpaConfig { частная конечная среда окружающей среды; @Autowired public SystemJpaConfig (среда среды) { this.environment = окружающая среда; } @Bean("systemEntityManagerFactory") public LocalContainerEntityManagerFactoryBean systemEntityManagerFactory() { LocalContainerEntityManagerFactoryBeanentityManagerFactoryBean = новый LocalContainerEntityManagerFactoryBean(); entityManagerFactoryBean.setPackagesToScan("com.ogl.system"); entityManagerFactoryBean.setPersistenceUnitName("система"); entityManagerFactoryBean.setDataSource(systemDataSource()); Адаптер HibernateJpaVendorAdapter = новый HibernateJpaVendorAdapter(); адаптер.setDatabase(База данных.POSTGRESQL); адаптер.setShowSql(истина); адаптер.setGenerateDdl(ложь); entityManagerFactoryBean.setJpaVendorAdapter(адаптер); вернуть объектEntityManagerFactoryBean; } @Бин Источник данных DriverManagerDataSource dataSource = новый DriverManagerDataSource(); dataSource.setDriverClassName(environment.getProperty("p4.datasource.driver")); dataSource.setUrl(environment.getProperty("p4.system.url")); dataSource.setUsername(environment.getProperty("p4.system.user")); dataSource.setPassword(environment.getProperty("p4.system.password")); вернуть источник данных; } @Бин общественный PlatformTransactionManager systemTransactionManager () { JpaTransactionManagertransactionManager = новый JpaTransactionManager(); транзакцииManager.setEntityManagerFactory((systemEntityManagerFactory().getObject())); вернуть менеджер транзакции; } } Entity Manager 2
пакет com.ogl; импортировать org.springframework.beans.factory.annotation.Autowired; импортировать org.springframework.context.annotation.Bean; импортировать org.springframework.context.annotation.Configuration; импортировать org.springframework.core.env.Environment; импортировать org.springframework.data.jpa.repository.config.EnableJpaRepositories; импортировать org.springframework.jdbc.datasource.DriverManagerDataSource; импортировать org.springframework.orm.jpa.JpaTransactionManager; импортировать org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; импортировать org.springframework.orm.jpa.vendor.Database; импортировать org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; импортировать org.springframework.transaction.PlatformTransactionManager; импортировать javax.sql.DataSource; @Конфигурация @EnableJpaRepositories(basePackages = "com.ogl.company",entityManagerFactoryRef = "companyEntityManagerFactory", transactionManagerRef = "companyTransactionManager") общественный класс CompanyJpaConfig { частная конечная среда окружающей среды; @Autowired public CompanyJpaConfig (среда среды) { this.environment = окружающая среда; } @Начальный @Bean("companyEntityManagerFactory") public LocalContainerEntityManagerFactoryBean CompanyEntityManagerFactory() { LocalContainerEntityManagerFactoryBeanentityManagerFactoryBean = новый LocalContainerEntityManagerFactoryBean(); entityManagerFactoryBean.setPackagesToScan("com.ogl.company"); entityManagerFactoryBean.setPersistenceUnitName("компания"); entityManagerFactoryBean.setDataSource(companyDataSource()); Адаптер HibernateJpaVendorAdapter = новый HibernateJpaVendorAdapter(); адаптер.setDatabase(База данных.POSTGRESQL); адаптер.setShowSql(истина); адаптер.setGenerateDdl(ложь); entityManagerFactoryBean.setJpaVendorAdapter(адаптер); вернуть объектEntityManagerFactoryBean; } @Бин Источник данных компанииDataSource() { DriverManagerDataSource dataSource = новый DriverManagerDataSource(); dataSource.setDriverClassName(environment.getProperty("p4.datasource.driver")); dataSource.setUrl(environment.getProperty("p4.company.url")); dataSource.setUsername(environment.getProperty("p4.company.user")); dataSource.setPassword(environment.getProperty("p4.company.password")); вернуть источник данных; } @Начальный @Бин общественный PlatformTransactionManager CompanyTransactionManager () { JpaTransactionManagertransactionManager = новый JpaTransactionManager(); транзакцииManager.setEntityManagerFactory((companyEntityManagerFactory().getObject())); вернуть менеджер транзакции; } } Инъекция
пакет com.ogl; импортировать org.crygier.graphql.GraphQLExecutor; импортировать org.springframework.context.annotation.Bean; импортировать org.springframework.context.annotation.ComponentScan; импортировать org.springframework.context.annotation.Configuration; импортировать javax.persistence.EntityManager; импортировать javax.persistence.PersistenceContext; @Конфигурация @ComponentScan общественный класс GraphQLJpaConfig { @PersistenceContext(unitName = «компания») частный EntityManager EntityManager; @Бин общественный GraphQLExecutorgraphQLExecutor() { вернуть новый GraphQLExecutor(entityManager); } } pom.xml
4.0.0 com.ogl jpa-демо 0.0.1-SNAPSHOT банка jpa-демо Демо-проект для JPA org.springframework.boot spring-boot-starter-parent 1.5.4.РЕЛИЗ UTF-8 UTF-8 1.8 org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-web org.postgresql postgresql время выполнения org.springframework.boot spring-boot-starter-test тест com.graphql-java graphql-java 2.3.0 com.crygier graphql-jpa 0.3 org.springframework.boot spring-boot-maven-plugin
Мобильная версия