1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

#6 SpringでOracleデータベースに接続する

Last updated at Posted at 2022-11-13

前提条件

1. 必要インストール
 (1) Eclipse 2022
 (2) Oracle SQL Developer 21.2.1
 (3) Oracle Database 21c Express Edition
 (4) Oracle Database JDBC driver

2. プロジェクトの設定内容
 (1) Eclipseでプロジェクトを立ち上げる(ファイル > 新規 > Spring スターター・プロジェクト)
image.png

 (2) 依存関係を設定する
image.png

今回の記事では環境設定とテストのみなので、新たに追加するのはLombok、Spring DataJDBC、Oracle DriverのみでOK


 (3) テーブルを作成する(SQL developerを用いて作成)

sample
CREATE TABLE Sample (
    Id NUMBER PRIMARY KEY,
    Name VARCHAR2(50) NOT NULL,
    Gender NUMBER(1) NOT NULL,
    Age NUMBER(3) NOT NULL
);

INSERT INTO Sample VALUES(1, 'Sato', 0, 20);   /* 0='男性', 1='女性' */
INSERT INTO Sample VALUES(2, 'Suzuki', 1, 21); /* 0='男性', 1='女性' */
INSERT INTO Sample VALUES(3, 'Tanaka', 1, 22); /* 0='男性', 1='女性' */

Sampleテーブル

ID NAME GENDER AGE
1 1 Sato 0 20
2 2 Suzuki 1 21
3 3 Tanaka 1 22

 (4) 接続するための設定を記述する

application.properties
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:XE
spring.datasource.username={username} 
spring.datasource.password={password}
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver

Oracleデータベースのポート番号はデフォルトでは"1521"らしい
ユーザー名、パスワードはインストール時に設定したものを使用


 (5) テスト
最後にテスト用のファイルを作成します。

OracleRepository.java
package com.example.repository;

import org.springframework.data.repository.CrudRepository;

import com.example.model.Sample;

public interface OracleRepository extends CrudRepository<Sample, Integer> {
}
Sample.java
package com.example.model;

import org.springframework.data.annotation.Id;

import lombok.Data;

@Data
public class Sample {

	@Id
	private Integer id;
	private String name;
	private Integer gender;
	private Integer age;
}
SpringOracleSampleApplication.java
package com.example;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import com.example.model.Sample;
import com.example.repository.OracleRepository;

@SpringBootApplication
public class SpringOracleSampleApplication {

	public static void main(String[] args) {
		SpringApplication.run(SpringOracleSampleApplication.class, args)
		.getBean(SpringOracleSampleApplication.class).execute();
	}
	
	@Autowired
	private OracleRepository repository;
	
	public void execute() {
		Iterable<Sample> samples = repository.findAll();
		for(Sample sample : samples) {
			System.out.println(sample);
		}
	}
}

コンソール画面にテーブルから取得したデータを表示させることができました。
image.png

まとめ

Oracleデータベースに接続するための手順をまとめると

  1. 依存関係にOracle Driver追加(Lombokは必須ではないが、あった方が絶対良い)
  2. テーブルを作成
  3. application.propertiesに設定を記述
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?