• Как исправить: "Error creating bean with name 'entityManagerFactory'"?

    @RuthenRa Автор вопроса
    Вы были правы! Проблема была в пароле и в моей невнимательности!!! Прошу за это прощение) Я переустанавливал не только SQL, но и ОС и все остальное и при переустановке установил другой пароль (отличающийся на 1 символ). При настройке взял их со своего гита, где был старый пароль
  • Как исправить: "Error creating bean with name 'entityManagerFactory'"?

    @RuthenRa Автор вопроса
    package web.config;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.PropertySource;
    import org.springframework.core.env.Environment;
    import org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor;
    import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
    import org.springframework.jdbc.datasource.DriverManagerDataSource;
    import org.springframework.orm.jpa.JpaTransactionManager;
    import org.springframework.orm.jpa.JpaVendorAdapter;
    import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
    import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
    import org.springframework.transaction.PlatformTransactionManager;
    import org.springframework.transaction.annotation.EnableTransactionManagement;
    import javax.persistence.EntityManagerFactory;
    import javax.sql.DataSource;
    import java.util.Properties;
    
    @Configuration
    @EnableTransactionManagement
    @PropertySource(value = {"classpath:db.properties"})
    @ComponentScan({"web"})
    @EnableJpaRepositories(basePackages = {"web.dao"})
    public class HibernateConfig {
    
        private Environment environment;
    
        @Autowired
        public void setEnvironment(Environment environment) {
            this.environment = environment;
        }
    
        @Bean
        public DataSource dataSource() {
            DriverManagerDataSource dataSource = new DriverManagerDataSource();
            dataSource.setDriverClassName(environment.getRequiredProperty("db.driver"));
            dataSource.setUrl(environment.getRequiredProperty("db.url"));
            dataSource.setUsername(environment.getRequiredProperty("db.username"));
            dataSource.setPassword(environment.getRequiredProperty("db.password"));
            return dataSource;
        }
    
        @Bean
        public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
            final LocalContainerEntityManagerFactoryBean entityManagerFactory = new LocalContainerEntityManagerFactoryBean();
            entityManagerFactory.setDataSource(dataSource());
            entityManagerFactory.setPackagesToScan("web.model");
    
            final JpaVendorAdapter jpaVendorAdapter = new HibernateJpaVendorAdapter();
            entityManagerFactory.setJpaVendorAdapter(jpaVendorAdapter);
            entityManagerFactory.setJpaProperties(jpaProperties());
            return entityManagerFactory;
        }
    
        @Bean
        public Properties jpaProperties() {
            final Properties properties = new Properties();
            properties.put("hibernate.hbm2ddl.auto", environment.getRequiredProperty("hibernate.hbm2ddl.auto"));
            properties.put("hibernate.format_sql", environment.getRequiredProperty("hibernate.format_sql"));
            properties.put("hibernate.show_sql", environment.getRequiredProperty("hibernate.show_sql"));
            properties.put("hibernate.dialect", environment.getRequiredProperty("hibernate.dialect"));
            return properties;
        }
    
        @Bean
        public PlatformTransactionManager transactionManager(EntityManagerFactory entityManagerFactory) {
            final JpaTransactionManager transactionManager = new JpaTransactionManager();
            transactionManager.setEntityManagerFactory(entityManagerFactory);
            return transactionManager;
        }
    
        @Bean
        public PersistenceExceptionTranslationPostProcessor exceptionTranslation() {
            return new PersistenceExceptionTranslationPostProcessor();
        }
    }


    DataGrip нет, в IDEA через Database тестово подключаюсь
  • Как исправить: "Error creating bean with name 'entityManagerFactory'"?

    @RuthenRa Автор вопроса
    Я прочитал лог полностью, но в чем проблема так и не понял. Я проверил логин,пароль и url... SQL переустанавливал буквально 3 дня назад..
  • Как исправить: "Error creating bean with name 'entityManagerFactory'"?

    @RuthenRa Автор вопроса
    Настройка не через xml.
    package web.config;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.PropertySource;
    import org.springframework.core.env.Environment;
    import org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor;
    import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
    import org.springframework.jdbc.datasource.DriverManagerDataSource;
    import org.springframework.orm.jpa.JpaTransactionManager;
    import org.springframework.orm.jpa.JpaVendorAdapter;
    import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
    import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
    import org.springframework.transaction.PlatformTransactionManager;
    import org.springframework.transaction.annotation.EnableTransactionManagement;
    import javax.persistence.EntityManagerFactory;
    import javax.sql.DataSource;
    import java.util.Properties;
    
    @Configuration
    @EnableTransactionManagement
    @PropertySource(value = {"classpath:db.properties"})
    @ComponentScan({"web"})
    @EnableJpaRepositories(basePackages = {"web.dao"})
    public class HibernateConfig {
    
        private Environment environment;
    
        @Autowired
        public void setEnvironment(Environment environment) {
            this.environment = environment;
        }
    
        @Bean
        public DataSource dataSource() {
            DriverManagerDataSource dataSource = new DriverManagerDataSource();
            dataSource.setDriverClassName(environment.getRequiredProperty("db.driver"));
            dataSource.setUrl(environment.getRequiredProperty("db.url"));
            dataSource.setUsername(environment.getRequiredProperty("db.username"));
            dataSource.setPassword(environment.getRequiredProperty("db.password"));
            return dataSource;
        }
    
        @Bean
        public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
            final LocalContainerEntityManagerFactoryBean entityManagerFactory = new LocalContainerEntityManagerFactoryBean();
            entityManagerFactory.setDataSource(dataSource());
            entityManagerFactory.setPackagesToScan("web.model");
    
            final JpaVendorAdapter jpaVendorAdapter = new HibernateJpaVendorAdapter();
            entityManagerFactory.setJpaVendorAdapter(jpaVendorAdapter);
            entityManagerFactory.setJpaProperties(jpaProperties());
            return entityManagerFactory;
        }
    
        @Bean
        public Properties jpaProperties() {
            final Properties properties = new Properties();
            properties.put("hibernate.hbm2ddl.auto", environment.getRequiredProperty("hibernate.hbm2ddl.auto"));
            properties.put("hibernate.format_sql", environment.getRequiredProperty("hibernate.format_sql"));
            properties.put("hibernate.show_sql", environment.getRequiredProperty("hibernate.show_sql"));
            properties.put("hibernate.dialect", environment.getRequiredProperty("hibernate.dialect"));
            return properties;
        }
    
        @Bean
        public PlatformTransactionManager transactionManager(EntityManagerFactory entityManagerFactory) {
            final JpaTransactionManager transactionManager = new JpaTransactionManager();
            transactionManager.setEntityManagerFactory(entityManagerFactory);
            return transactionManager;
        }
    
        @Bean
        public PersistenceExceptionTranslationPostProcessor exceptionTranslation() {
            return new PersistenceExceptionTranslationPostProcessor();
        }
    }


    Диалект добавил уже позже, так как видел комментарии, что причина может быть в этом. Не помогло
  • Почему не меняется значение возвращаемого массива из метода в метод main?

    @RuthenRa Автор вопроса
    edward_freedom, извини, если тебя это обидело...
    Тимур, дал конкретный ответ, ты задал встречный наводящий вопрос. Прикол, в том, что проблема у меня и была в том, что я не присваивал результат, так как я не понял, как его присвоить.