최신 애플리케이션 개발에서 데이터 액세스 계층은 애플리케이션과 데이터베이스를 연결하는 핵심 역할을 합니다. ORM(Object Relational Mapping)은 데이터 액세스 계층의 개발 효율성을 향상하고 데이터베이스 프로그래밍을 단순화하는 중요한 기술이 되었습니다. 이 기사에서는 Spring Boot와 JPA를 사용하여 ORM 기반 데이터 액세스 계층을 구축하는 방법을 소개합니다.
Spring Boot는 웹 애플리케이션을 빠르게 구축하기 위한 경량 Java 프레임워크입니다. 자동 구성, 신속한 개발 등 다양한 편리한 기능을 제공합니다. 한편, JPA(Java Persistence API)는 Java 개체를 관계형 데이터베이스의 테이블에 매핑하는 Java ORM 프레임워크입니다. Spring Boot와 JPA를 사용하면 ORM 기반 데이터 액세스 계층을 빠르고 효율적으로 구축할 수 있습니다.
Spring Boot는 다른 프레임워크를 쉽게 통합할 수 있는 많은 종속성을 제공합니다. 먼저 pom에 다음 종속성을 추가해야 합니다. JPA 프레임워크를 사용하려면 인메모리 데이터베이스에 "h2"가 사용되므로 애플리케이션을 빠르게 개발하고 테스트할 수 있습니다.
엔티티 클래스 생성<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency>
위 코드에서 "@Entity" 주석은 Java 클래스를 엔터티 클래스에 매핑하는 데 사용되고 "@Table" 주석은 해당 테이블을 지정하는 데 사용됩니다. 데이터베이스의 이름. 또한 "@Id" 주석은 엔터티의 기본 키를 식별하는 데 사용되며 "@GeneratedValue" 주석은 기본 키의 생성 전략을 지정합니다.
데이터 액세스 레이어 만들기@Entity @Table(name = "users") public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String firstName; private String lastName; private String email; // getters and setters }
위 코드에서 "@Repository" 주석은 데이터 액세스 계층을 Spring 구성 요소로 식별하는 데 사용되며 "CrudRepository" 인터페이스는 몇 가지 기본 CRUD 작업을 제공합니다(예: 예를 들어 엔터티 저장, 업데이트 또는 삭제).
데이터 액세스 레이어 삽입@Repository public interface UserRepository extends CrudRepository<User, Long> { }
위 코드에서 "@Service" 주석은 서비스 레이어를 Spring 컴포넌트로 식별하는 데 사용되며 "@Autowired" 주석은 "UserRepository"를 주입하는 데 사용됩니다. 데이터 액세스를 위해 "UserService"로 이동합니다. 또한 "getUsers" 메소드는 "findAll" 메소드를 사용하여 데이터베이스에서 모든 사용자를 검색하고, "saveUser" 메소드는 사용자를 데이터베이스에 저장하며, "deleteUsers" 메소드는 모든 사용자를 삭제합니다.
컨트롤러 클래스 작성@Service public class UserService { @Autowired private UserRepository userRepository; public Iterable<User> getUsers() { return userRepository.findAll(); } public void saveUser(User user) { userRepository.save(user); } public void deleteUsers() { userRepository.deleteAll(); } }
위 코드에서 "@RestController" 주석은 컨트롤러 클래스를 Spring MVC 컨트롤러로 식별하는 데 사용되며 "@RequestMapping" 주석은 요청을 매핑하는 데 사용됩니다. 컨트롤러 클래스에. 또한 "getUsers" 메서드는 HTTP GET 요청을 "/users" 경로에 매핑하고 "UserService"를 사용하여 모든 사용자를 검색하며, "saveUser" 메서드는 HTTP POST 요청을 "/users" 경로에 매핑하고 사용자를 데이터베이스에서 "deleteUsers" 메소드는 HTTP DELETE 요청을 "/users" 경로에 매핑하고 데이터베이스에서 모든 사용자를 삭제합니다.
결론위 내용은 Spring Boot 및 JPA를 사용하여 ORM 기반 데이터 액세스 계층 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!