스프링부트 mysql 데이터 가져오기

먼저, 스프링 부트에서 MySQL에 연결하기 위해 의존성을 추가해야 합니다. Maven을 사용한다면 pom.xml 파일에 다음과 같이 의존성을 추가해주세요.

<dependencies>
    <!-- Spring Data JPA -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>

    <!-- MySQL Connector -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
</dependencies>

의존성을 추가한 후, application.properties 파일에 MySQL 데이터베이스에 대한 연결 정보를 설정해야 합니다. 다음과 같은 설정을 추가해주세요.

spring.datasource.url=jdbc:mysql://localhost:3306/your-database-name
spring.datasource.username=your-username
spring.datasource.password=your-password

# Hibernate 설정
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect

이제 데이터를 가져올 엔티티 클래스를 생성해야 합니다. 예를 들어, User 클래스를 생성하고 @Entity 어노테이션으로 엔티티 클래스임을 표시해주세요.

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private String name;
    private String email;
    
    // getter, setter 메서드
}

이제 스프링 데이터 JPA를 사용하여 MySQL 데이터를 가져올 리포지토리 클래스를 생성해야 합니다. UserRepository 인터페이스를 다음과 같이 생성해주세요.

import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<User, Long> {

}

마지막으로, 가져온 데이터를 사용하는 서비스 또는 컨트롤러 클래스를 작성해주면 됩니다. UserService 클래스 예제를 보겠습니다.

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService {
    private final UserRepository userRepository;

    @Autowired
    public UserService(UserRepository userRepository) {
        this.userRepository = userRepository;
    }

    public List<User> getAllUsers() {
        return userRepository.findAll();
    }
}

위의 UserService 클래스에서는 UserRepository를 사용하여 getAllUsers() 메서드를 통해 모든 사용자를 가져오는 예제입니다.

이렇게 스프링 부트에서 MySQL 데이터를 가져오는 방법을 알아보았습니다. 위의 예제 코드를 참고하여 자신의 프로젝트에 적용해보세요. #스프링부트 #MySQL