Java から ORACLE DB へ接続してみる(実践偏)

以前の記事 Java から ORACLE DB へ接続してみる(調査偏) からの続きです。

今回は「Java から ORACLE DB へ接続してみる(実践偏)」ということで、実際に ORACLE DB に接続してデータを取得してみます。

データ取得には Spring Boot Data JPA を利用します。Spring Boot Data JPA は、効率的に DB のデータを扱うことの出来る便利なフレームワークです。便利なフレームワークは、定時で帰るためには積極的に取り入れたいものです。

Controller

まずフロント部分を作成します。

package com.example.app.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class SampleController {

  @GetMapping(value = "/")
  public String simpleGet() {
    return "Hello HttpRequest GET";
  }

}

ブラウザでチェックして、Hello HttpRequest GET と表示されればOKです。

Entity

次に、DB のテーブルとマッピングさせる Entityクラス を作成します。

package com.example.app.entity;

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

import lombok.Data;

@Entity
@Data
public class SampleEntity {

  @Id
  @GeneratedValue(strategy = GenerationType.AUTO)
  private Integer id;
  private String name;
  private String addres;
}

Repository

Entity を引っ張ってくる Repository を作成します。Class でなく Interface なのがポイントです。

package com.example.app.repository;

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

import com.example.app.entity.SampleEntity;

@Repository
public interface SampleRepository extends JpaRepository<SampleEntity, Integer> {

}

Autowired

Controller で Repository を Autowired します。これで DB のデータを Controller で取得することが出来ます。

基本はこれだけです。

DBへの接続設定

ORACLE を使用する際には Spring Boot の apprication.properties に次の記述をします。(pom.xml の記述もお忘れなく!)

今回は findAll() で全レコード取得するだけでしたが、Spring Boot Data JPA にはたくさんの機能があり応用するともっと便利になります。