Setting up the database in a Java development environment can be a challenging task, especially when it comes to choosing the right driver and properly configuring dependencies. Here, I will share how to set up a Spring MVC environment using JPA and SQL Server.
The first step is to add the necessary dependencies to your pom.xml file.
<dependencies> <!-- Dependência do MSSQL --> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>7.2.2.jre8</version> </dependency> <!-- Dependência do Spring Data JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <!-- Dependência do Spring Boot Starter Web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
Now let's create the JPA configuration class. I will use the nomenclature JPAConfiguration.java.
package br.com.meuprojeto.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Profile; import org.springframework.jdbc.datasource.DriverManagerDataSource; import org.springframework.orm.jpa.JpaTransactionManager; import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter; import org.springframework.transaction.annotation.EnableTransactionManagement; import javax.persistence.EntityManagerFactory; import javax.sql.DataSource; import java.util.Properties; @Configuration @EnableTransactionManagement public class JPAConfiguration { @Bean public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource, Properties additionalProperties) { LocalContainerEntityManagerFactoryBean factoryBean = new LocalContainerEntityManagerFactoryBean(); HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); factoryBean.setJpaVendorAdapter(vendorAdapter); factoryBean.setPackagesToScan("br.com.meuprojeto.loja.models"); factoryBean.setDataSource(dataSource); factoryBean.setJpaProperties(additionalProperties); return factoryBean; } @Bean @Profile("dev") public Properties additionalProperties() { Properties properties = new Properties(); properties.setProperty("hibernate.dialect", "org.hibernate.dialect.SQLServerDialect"); properties.setProperty("hibernate.show_sql", "true"); properties.setProperty("hibernate.hbm2ddl.auto", "create"); properties.setProperty("javax.persistence.schema-generation.scripts.create-target", "db-schema.jpa.ddl"); return properties; } @Bean @Profile("dev") public DriverManagerDataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setUsername("sa"); dataSource.setPassword(""); // Adicione sua senha aqui dataSource.setUrl("jdbc:sqlserver://127.0.0.1;databaseName=MeuProjeto;"); dataSource.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); return dataSource; } @Bean public JpaTransactionManager transactionManager(EntityManagerFactory emf) { return new JpaTransactionManager(emf); } }
When configuring the database for a development environment, it is essential to ensure that the driver and SQL Server versions are compatible. In the example above, driver version 7.2.2.jre8 was successfully used with the latest versions of SQL Server Developer and Express.
This configuration should provide a solid foundation to start developing Spring MVC applications with JPA using SQL Server. Experiment and adapt as needed to meet your specific needs.
The above is the detailed content of Configuring Spring with JPA and Microsoft SQL Server. For more information, please follow other related articles on the PHP Chinese website!