「Spring Boot」JPA(Java Persistence API)でMySQLを操作する
1.pom.xmlの設定
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.6</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.6</version>
</dependency>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.6</version> </dependency>
2.application.propertiesの設定
#データソース
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://172.17.2.200:3306/testsppa?charset=utf8mb4&useSSL=false
spring.datasource.username=springboot
spring.datasource.password=springboot
# Hikari データソース専用構成
spring.datasource.hikari.maximum-pool-size=20
spring.datasource.hikari.minimum-idle=5
# JPA 関連設定
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=create
#データソース
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://172.17.2.200:3306/testsppa?charset=utf8mb4&useSSL=false
spring.datasource.username=springboot
spring.datasource.password=springboot
# Hikari データソース専用構成
spring.datasource.hikari.maximum-pool-size=20
spring.datasource.hikari.minimum-idle=5
# JPA 関連設定
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=create
#データソース spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://172.17.2.200:3306/testsppa?charset=utf8mb4&useSSL=false spring.datasource.username=springboot spring.datasource.password=springboot # Hikari データソース専用構成 spring.datasource.hikari.maximum-pool-size=20 spring.datasource.hikari.minimum-idle=5 # JPA 関連設定 spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=create
3.エンティティのクラスの定義
@Entity
@Table(name = "AUTH_USER")
public class UserDO {
@Id
private Long id;
@Column(length = 32)
private String name;
@Column(length = 32)
private String account;
@Column(length = 64)
private String pwd;
略
@Entity
@Table(name = "AUTH_USER")
public class UserDO {
@Id
private Long id;
@Column(length = 32)
private String name;
@Column(length = 32)
private String account;
@Column(length = 64)
private String pwd;
略
@Entity @Table(name = "AUTH_USER") public class UserDO { @Id private Long id; @Column(length = 32) private String name; @Column(length = 32) private String account; @Column(length = 64) private String pwd; 略
4.JpaRepositoryインターフェースを継承
@Repository
public interface UserRepository extends JpaRepository<UserDO, Long> {
}
@Repository
public interface UserRepository extends JpaRepository<UserDO, Long> {
}
@Repository public interface UserRepository extends JpaRepository<UserDO, Long> { }
5.コントローラのクラス
@RestController
public class UserController {
@Autowired
private UserRepository userRepository;
@GetMapping("/user")
public List<UserDo> getUser() {
return userRepository.findAll();
}
}
@RestController
public class UserController {
@Autowired
private UserRepository userRepository;
@GetMapping("/user")
public List<UserDo> getUser() {
return userRepository.findAll();
}
}
@RestController public class UserController { @Autowired private UserRepository userRepository; @GetMapping("/user") public List<UserDo> getUser() { return userRepository.findAll(); } }