Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Onde busca as informações do property?

Eu estava usando o MySQL 8 como banco de dados do curso. E o meu código dava erro direto, usei até o projeto do professor para ver se funcionava e também dava erro. Pesquisei no fórum e um colega havia comentado que trocou o MySQL para versão 5, que tinha funcionado. Fiz e realmente o código funcionou sem problemas. Há minha dúvida é onde eu busco as informações do properties do código abaixo para a versão 8 que é a mais recente?

public class JPAConfiguration {

    @Bean
    public LocalContainerEntityManagerFactoryBean entityManagerFactory() {

        LocalContainerEntityManagerFactoryBean factoryBean = 
            new LocalContainerEntityManagerFactoryBean();

        JpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();

        factoryBean.setJpaVendorAdapter(vendorAdapter);

        DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setUsername("root");
        dataSource.setPassword("r1a2f3a4"); // modifique para a senha do seu banco
        dataSource.setUrl("jdbc:mysql://localhost:3317/casadocodigo");
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        factoryBean.setDataSource(dataSource);

        Properties props = new Properties();
        props.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQL5Dialect");
        props.setProperty("hibernate.show_sql", "true");
        props.setProperty("hibernate.hbm2ddl.auto", "create");
        factoryBean.setJpaProperties(props);

        factoryBean.setPackagesToScan("br.com.casadocodigo.loja.models");

        return factoryBean;

    }

    @Bean
    public JpaTransactionManager transactionManager(EntityManagerFactory emf) {
        return new JpaTransactionManager(emf);
    }
}
1 resposta
solução!

Basicamente, para utilizar o MySQL 8 você vai precisar usar o driver da versão 8 e mudar o dialect:

props.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQL8Dialect");

No seu pom.xml:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.20</version>
</dependency>

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software