Spring | h2
👂 入る前に。
awsでは個人dbをアップグレードして多く使用することが多い.
しかし、私は最近awsのセキュリティを変更しました.特定の場所のipのみ許可されます.
この点から,メモリ状態のdbでは小さなdbが必要であり,ちょうどh 2ベースであることがわかる.そこで,springbootでh 2ベースをどのように使用するかについて説明する.
🧑🏻💻 H 2ベスとは?
H 2はJavaで作成されたリレーショナルデータベース管理システムである.
Javaアプリケーションで実行するか、クライアント-サーバモードで実行できます.
主な機能
🥸 SpringでのH 2ベースの使用
もちろんgradeとymlも追加します.
gradleの場合、h 2ベースを作成するために依存項目を作成できます.
ymlはh 2ベース環境に基づいて作成される.
build.gradle
dependencies {
runtimeOnly 'com.h2database:h2'
}
application.yml
spring:
h2:
console:
enabled: true
path: /h2-console
datasource:
url: jdbc:h2:~/test;
driver-class-name: org.h2.Driver
username: sa
password:
jpa:
database-platform: org.hibernate.dialect.H2Dialect
このように設定し、スプリングガイドを再実行します.うまく貼ればh2-consleに接続できます.
(h 2-consoleにリンク)
では、上の写真のようにコンソールに入ることができます.しかし、私たちは単純なプロジェクトではありません.
スプリングスタート!!
スプリングと不可欠な安全性が設定されているはずです.もちろん、セキュリティ設定がされていなければ
エラー・ページは生成されません.
しかし筆者の場合は楽ページが生成されています...
心配しないで、まだ設定がありますよ!!下のように秘密の場所を設ける!静的ファイルを設定する場所
h 2-コンソールuriを設定!それで終わりだ!
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring()
// Http Method OPTIONS
.antMatchers(HttpMethod.OPTIONS, "/**")
// h2 console 추가
.antMatchers("/h2-console/**")
;
}
コンソールで「接続」ボタンを押すことで、dbをインストールせずにh 2データベースを使用できます!!🚨 TCPの使用
上の状況はfile...もう一度探しました.
だからtcpサーバに接続することにしました.これは、スマートデバイスでも使いやすく、tcpを使えばファイルを無駄にしたり、パソコンに残したりしないという利点があるからです.
application.yml
spring:
h2:
console:
enabled: true
path: /h2-console
datasource:
hikari:
jdbc-url: jdbc:h2:tcp://localhost:9092/mem:testdb
driver-class-name: org.h2.Driver
username: sa
password:
jpa:
database-platform: org.hibernate.dialect.H2Dialect
java config
@Profile("h2")
@Configuration
public class H2Configuration {
@Bean
@ConfigurationProperties("spring.datasource.hikari")
public HikariDataSource dataSource() throws SQLException {
Server server = defaultRun();
return new HikariDataSource();
}
private Server defaultRun() throws SQLException {
return Server.createTcpServer(
"-tcp",
"-tcpAllowOthers",
"-ifNotExists",
"-tcpPort", 9092 + "").start();
}
}
前述したように、設定を操作し、h 2を使用しても問題ないはずです.エラーが発生した場合は、メッセージとともに検索できます.
ymlの設定に従って、remoteとしてuriを書きます.
最近自動でやればライブに入らなくてもまずIDEで使えます!ああ...
👊 の最後の部分
本当のh 2 baseは筆者にとって最高です
何のメリットがありますか?まずawsに依存しませんか?dbをサーバにアップロードしなくても使えます...
もちろんローカルでアップロードして使うこともできますが面倒すぎます...しかし、サーバーを購入する費用も高い!!
だからh 2の基礎の情況はとても良くて、この点は最小化することができます!
ただし、少量の作業しかできないプロジェクトに貼り付けると、残りの大きなプロジェクトはもちろんdbサーバを構成して使用します!
Reference
この問題について(Spring | h2), 我々は、より多くの情報をここで見つけました https://velog.io/@ewan/What-is-Spring-H2-편テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol