SpringCloud(9)は---- Configuration Centerを達成するためのMySQL

、再び自分の手を再構築するプロセス全体に精通しているので、すでに場所にあるので、会社経営は、コンフィギュレーションデータのMySQLの構成管理によって行われます。githubのソースの後期関連プロジェクトは、アドレスを補完します

集中管理構成サービス、異なる環境、異なる構成のためのマイクロマイクロ管理サービスも動作中に動的に調整することができ、需要は構成の変更後に自動的に更新することができ、春の雲コンフィグ上記の要件を満たしながら。

 GitHubのプロジェクトコード住所https://github.com/yudiandemingzi/spring-cloud-study

ビルドにプロジェクト

サービスは、主に3つのマイクロを使用しています

(1)ユーレカ・サーバー:7001登録機関

(2)設定 - サーバー:5001 Configuration Centerの

(3)製品・サーバー:8001の製品マイクロサービス

1、ユーレカ・サーバーレジストリ

レジストリは、レジストリを変更していない、いくつかはここでは繰り返さないだろう、非常に簡単です。あなたが見ることができる前に、ブログを書いている:SpringCloud(3)---ユーレカサービスの登録と発見を

2、マイクロセンター構成サービス

    1、のpom.xml

コードをコピー
<! -服务中心のjar包- > 
<依存> 
<groupIdを> org.springframework.cloud </ groupIdを> 
<たartifactId>春・クラウド・スターター・ネットフリックス-ユーレカ・クライアント</たartifactId> 
</依存関係> 

<! -配置中心のjar包- > 
<依存> 
<groupIdを> org.springframework.cloud </ groupIdを> 
<たartifactId>春・クラウド-config設定-サーバー</たartifactId> 
</依存関係> 

<! -连接のmsql数据库相关ジャー包- > 
<依存性> 
<のgroupId> org.springframework.boot </のgroupId> 
<たartifactId>ばねブートスタータJDBC </たartifactId> 
</依存> 
<依存性> 
<groupIdを>のMySQL </のgroupId> 
<たartifactId>MySQLのコネクタ-javaの</たartifactId> 
<バージョン> 5.1.21 </バージョン> 
</依存関係>
コードをコピー

   2、application.yml

コードをコピー
#服务名称
 サーバー:
   ポート:5001 

#连接配置信息
 春:
   アプリケーション:
     名前:コンフィグサーバ-JDBC 
   プロファイル:
     アクティブ:JDBC 
   クラウド:
     設定:
       サーバー:
         デフォルト・ラベル:DEV 
         JDBC:
           SQL:SELECT AKEY、AValueはconfig_serverどこからAPPLICATION =?そしてAPROFILEは=?そしてLABELは=?
 ################################################## ################################################## #
 #mysqlの属性配置
   データソース:
     ドライバー・クラス名:はcom.mysql.jdbc.Driver 
     URLます。jdbc:mysqlの://127.0.0.1:3306 /テスト
     ユーザ名:ルート
     パスワード:ルート
 ################################################## ################################################## #

#中央アドレス指定
 :ユーレカ
   クライアント:
     serviceURLの:
       defaultzoneます。http:// localhost:7001 /ユーレカ/
コードをコピー

ここでの主なスピーカーの接続構成情報の下で

(1)spring.profiles.active = JDBC、自動的JdbcEnvironmentRepository。

(2)SQL文のカスタムは、そうでない場合は、 "SELECT KEY、APPLICATION =?そしてPROFILE =?そしてLABEL =?PROPERTIESからVALUE"、具体的な言及JdbcEnvironmentRepositoryは達成がデフォルトになります。

私はの前に追加されているように(3)Iは、キー、値およびプロファイルによるデータベーステーブルconfig_serverを、組み込みは、MySQLのキーワードです。もちろん、テーブル名、フィールド名をカスタマイズすることができます。

(4){}アプリケーションクライアント「spring.application.name」属性に対応します。

         {Aprofile}クライアントに対応する「spring.profiles.active」属性(カンマ区切りリスト);および

          サーバ属性に対応する{ラベル}、バージョンは、構成ファイルのセットを指定することができます。

それは二つのフィールドである(5)フレームが自動的に環境マップ<キー、値>にパッケージされ、長い選択。

       3、MySQLのデータ

   4、springboot起動クラス

コメントを追加@EnableConfigServer

コードをコピー
@SpringBootApplication 
@EnableConfigServer 
パブリッククラスConfigserverApplication { 

パブリック静的無効メイン(文字列[] args){ 
SpringApplication.run(ConfigserverApplication.class、引数)。
    } 
}
コードをコピー

 3、製品・サービスのマイクロサービス

      1、のpom.xml 

コードをコピー
        <! -服务中心のjar - > 
        <依存> 
            <groupIdを> org.springframework.cloud </ groupIdを> 
            <たartifactId>春・クラウド・スターター・ネットフリックス-ユーレカ・クライアント</たartifactId> 
        </依存関係> 
        
        <! - -配置中心客户端のjar - > 
        <依存> 
            <groupIdを> org.springframework.cloud </ groupIdを> 
            <たartifactId>春・クラウド-config設定-クライアント</たartifactId>
コードをコピー

      2、bootstrap.yml

コードをコピー
#指定登録センターアドレス
ユーレカ:
  クライアント:
    serviceURLの:
      defaultzoneます。http:// localhost:7001 /ユーレカ/ 

#サービス名
春:
  アプリケーション:
    名前:製品・サービスは
  #中心から読み込まれる設定を指定
  :クラウド
    設定:
      ディスカバリー:
        -ID-サービス:サーバー設定-JDBCは
        有効:trueに
      プロフィール:DEVの
      ラベル:DEVの

サーバー:
  ポート:8001
コードをコピー

なぜここbootstrap.ymlではなくapplication.yml、同じディレクトリにある場合のでapplication.ymlとbootStrap.ymlです

ロード順高いapplication.ymlよりbootStrap.ymlは、すなわちbootStrap.yml優先順位がロードされます。

なぜにbootstrap.ymlを置いコンフィグサーバ情報に必要なのでしょうか?

春のクラウドを使用する場合は、構成情報は、一般的に(など、パスワード、など)の構成情報を取得するために、コンフィグサーバからロードされているか、いくつかの初期ブート設定を必要とします。

そのため、負荷の構成情報を使用するコンフィグサーバbootstrap.ymlの情報は、あなたが本当に必要とします。

     3、ConfigControllerタイプ(テスト)

コードをコピー
@RestController 
@RequestMapping( "/ API / V1 /製品")
publicクラスConfigController { 

    @value( "$ {item_url}")
    プライベート文字列のURL。

    / ** 
     *输出URL 
     * / 
    @RequestMapping( "URL")
    公共空リスト(){ 

        System.out.printlnは(URL); 
    }
コードをコピー

       4、試験

します。http:// localhost:8001 / API / V1 /製品/ URLをブレークに訪問して。

 

 

私はたまにしかそれについてのすべてを疑問に思っ過ぎて、静かにします。昔に持っている人は、さらに愚か、価値がない非難、ナイーブがありました。すべての後に、次の日、まだ非常に長いです。自分自身を奨励するために続けて、

夜明け、だけでなく、新たな出発点、だけでなく、未知の旅(11大佐)で、

 

:への転載https://www.cnblogs.com/qdhxhz/p/9624386.html

 

おすすめ

転載: www.cnblogs.com/wllcs/p/12002892.html