ほとんどの場合、アプリケーションでデータベースを変更する方法はありますか?私は、MySQLで発生しないH2に関する多くの問題を抱いています。たとえば、ALTER TABLE yourtable AUTO_INCREMENT = 1;動作しない代わりに私はMySQLのバージョンと同じくらいうまく動作しない再起動を使用しなければならなかった。また、今私はdatediffに問題があります。したがって、進行中のアプリケーションでデータベースを変更することは可能ですか?Springブートでの組み込みデータベースをH2からMySQLに変更する
0
A
答えて
2
はいできます。 は、あなたのポンポンファイルにMySQLの依存関係を含める:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
JpaRepositoryを拡張mysqlのためのリポジトリのインターフェースを作成します。
public interface SqlDAO extends JpaRepository<YourPOJO,Long>{
// you can use JpaRepository methods out of the box or write custom ones
}
あなたは.propertiesファイルや.ymlファイルを使用することができ、あなたのSQLのプロパティを追加します。私はyamlを使用します:
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/coolDB
username: root
password: 123456
jpa:
hibernate:
ddl-auto: update
show-sql: true
MySqlデータベース自体を実行するのを忘れないでください。 あなたのサービスは、Sqlと通信するためにリポジトリインターフェイスを使用する必要があります。ここで
は、JPAのドキュメントへのリンクとどのようにあなたのカスタムメソッドを作成することです: https://docs.spring.io/spring-data/jpa/docs/1.4.1.RELEASE/reference/html/jpa.repositories.html
編集:手動でmysqlのコンソールでデータベースを作成する必要があり、春はあなたのためにそれを行うことはありません。 .sqlファイルをリソースディレクトリにインクルードしてダミーデータを作成したり、SQL設定をさらに進めると、Springがそれを実行します。
何でも可能です – andrewdleach
どうすればいいですか?私は、POMの依存関係を変更してapplication.propertiesに情報を追加しようとしましたが、うまくいきませんでした。 – elec
あなたが試したことの例はまったくなく、あなたに役立つフィードバックを与えるのは難しいです。あなたの質問を編集して、あなたがコメントに私と共有したものだけでなく、あなたのPOMと他の関連するjavaファイルのコピー – andrewdleach