インターネットの発展に伴い、データベースを扱うアプリケーションがますます増えており、リレーショナル データベースのデータをオブジェクト モデルにマッピングする ORM (オブジェクト リレーショナル マッピング) テクノロジが登場し、データベース データを通常の操作と同じように操作できるようになります。 Java オブジェクト。現在最も普及している ORM テクノロジーとして Spring Boot と Spring Data JPA があり、この記事ではこれらを統合して ORM マッピングを実装する方法を紹介します。
この記事の内容を始める前に、まず Spring Boot と Spring Data JPA を理解し、次の環境を準備する必要があります。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
# 数据库连接信息 spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driver # JPA配置 spring.jpa.show-sql=true # 显示SQL spring.jpa.hibernate.ddl-auto=update # 自动创建表 spring.jpa.properties.hibernate.hbm2ddl.auto=update # 自动更新表 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect # 数据库方言
@Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private Integer age; // 省略getter和setter方法 }
public interface UserRepository extends JpaRepository<User, Long> { }
@RunWith(SpringRunner.class) @SpringBootTest public class UserRepositoryTest { @Autowired private UserRepository userRepository; @Test public void testSave() { User user = new User(); user.setName("test"); user.setAge(20); userRepository.save(user); assertThat(user.getId()).isNotNull(); } @Test public void testFindByName() { User user = new User(); user.setName("test"); user.setAge(20); userRepository.save(user); User foundUser = userRepository.findByName("test"); assertThat(foundUser.getName()).isEqualTo(user.getName()); } }
以上がSpring Boot と Spring Data JPA を統合して ORM マッピングを実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。