それは電気の供給業者のショッピングプラットフォームの全カテゴリですので、とても自然にそれがコア製品です。我々は最初のサービスを構築する必要がありますので、商品はマイクロサービスです。どちらを含む関連商品、一連のコンテンツ管理が含まれます:
-
カテゴリ管理
-
ブランド管理
-
製品仕様の管理
-
商品管理
-
在庫管理
商品のカテゴリに関連付けられているため、当社のエンジニアリングという名前leyou-item
。
私たちのleyou項目が、将来は確かに他のシステムは、データ・アクイジション・インタフェースで提供されるインタフェースのサービスを呼び出す必要があるが、また、カプセル化するために、対応するエンティティクラスを必要とするので、使用確かに意志があるだろう、マイクロブログサービスであることに留意すべきです関連するエンティティ・クラスへのインターフェース。
そこでここでは、他の人が座標のみが可能であることを知っている必要がある引用する際の重合技術、インタフェースおよび関連エンティティクラスは、将来的に独立したサブプロジェクトに提供するために使用する必要があります。
我々はleyou項目中に2つのサブプロジェクトを作成します。
-
leyou項目インタフェース:メインインターフェイスと露出外部などの関連するエンティティ
-
leyou項目サービス:すべてのビジネスロジックと内部インターフェース
示されているような関係を呼び出します。
2.leyouアイテム
それでもmavenのビルドを使用します。
保存場所:
それは、重合プロジェクトので、プロジェクトのPOMをパッケージ化する方法ですので(チェック、おそらく自動的に生成されました)
<! - POMとしてパッケージ化されている- > <パッケージ> POM </梱包>
3.leyou項目インターフェース
、leyou項目のプロジェクトを右クリックし、新規を選択 - >モジュール:
まだビルドにMavenを使用して、親プロジェクトに注意を払うにはleyou項目であります:
[完了]をクリックします。
この時点で、プロジェクト構造:
4.leyou項目サービス
そしてleyou-item-interface
同様に、我々は選択しleyou-item
、右、新しいモジュールをし、プロジェクトの情報を記入します:
保管場所を記入
[完了]をクリックします。
全体の構造microService
図示のように:
私たちは、あなたがleyou項目インタフェースとleyou項目サービスを見つけるだろう、ポンポンビューのleyou項目を開いて、モジュールとなっています。
あなたは、srcディレクトリleyou項目のプロジェクトを削除することができます
私たちがしなければならない次leyou-item-service
の依存関係を追加します。
私たちが必要なものについて考えてみて?
-
ユーレカクライアント
-
ウェブランチャー
-
-
ユニバーサルランチャーマッパー
-
ページングアシスタントスターター
-
接続プーリングは、デフォルトHykiraを使用します
-
MySQLのドライバ
-
忘れてはいけない、我々はまた、保有する必要が
ly-item-interface
エンティティクラスを
これらの依存関係は、我々のトップレベルの親プロジェクト:まあleyouが追加されました。だから、導入を指示することができます:
<依存性> <! -ウェブ启动器- > <依存> <groupIdを> org.springframework.boot </ groupIdを> <たartifactId>春・ブート・スターター・ウェブ</たartifactId> </依存関係> <! -ユーレカ客户端- > <依存> <groupIdを> org.springframework.cloud </ groupIdを> <たartifactId>春・クラウド・スターター・ネットフリックス-ユーレカ・クライアント</たartifactId> </依存関係> <! - MyBatisの的启动器- > <依存性> <のgroupId> org.mybatis.spring.boot </のgroupId> <たartifactId> MyBatisのスプリング・ブートスターター</たartifactId> </依存関係> <! -ユニバーサルマッパーランチャー- > <依存> <groupIdを> mysqlの</ groupIdを> <groupIdを> tk.mybatis </ groupIdを> <たartifactId>マッパースプリング・ブート・スターター</たartifactId> </依存関係> <! -分页助手启动器- > <依存> <groupIdを> com.github.pagehelper </ groupIdを> <たartifactId> pagehelperスプリング・ブート・スターター</たartifactId> </依存関係> <! - JDBC启动器- > <依存> <groupIdを> org.springframework.boot </ groupIdを> <たartifactId>春・ブート・スターター-JDBC </たartifactId> </依存関係> <! - mysqlの驱动- > <依存> <たartifactId>のmysql-コネクタ-javaの</たartifactId> </依存関係> <! -武威項目インタフェース实体类- > <依存> <groupIdを> com.wuwei.item。インタフェース </ groupIdを> <たartifactId>武威-アイテム- インタフェース </たartifactId> <バージョン> 1.0。0 -snapshot </バージョン> </依存> <! - springboot检测服务启动器- > <依存性> <のgroupId> org.springframework.boot </のgroupId> <たartifactId> springbootスタータアクチュエータ</たartifactId> </依存関係> <
何leyou項目インタフェースは、私たちが知っているので、最初の問題ではありません必要があります。頼りに必要なものの後、再導入。
7.スタートアップコンフィギュレーションを書きます
leyou-item工程
のみ、leyou-item-service
それを開始する必要があります。だからここでクラスを書いて起動します。
/ * @SpringBootApplication //ユーレカ客户端 @EnableDiscoveryClient * / @SpringBootApplication @EnableDiscoveryClient パブリック クラスWuweiItemServiceApplication { 公共 静的 ボイドメイン(文字列[]引数){ SpringApplication.run(WuweiItemServiceApplication クラス)。 } }
そして、グローバルプロパティファイルで:
#変更は、ポート番号 サーバー: ポート:8081 #プログラム名変更 :春 アプリケーション: :名項目 - サービス JDBCデータベース構成に接続する#の必要性 :データソース URL:JDBC:MySQLの:/// 武威の ユーザ名:ルート パスワード:ルート ひかり: 最大を -生涯:2883万のようなMySQLのWAIT_TIMEOUTパラメータ(表示変数を参照して、30分、あまり特定のデータベース30秒のタイムアウトの長さを設定し、:#接続寿命(ミリ秒)、タイムアウトと使用されていないが(退職)にリリースされた、デフォルト" タイムアウト%% ' ;) 最大 -poolサイズ:9。許可された接続の#接続プールの最大数。デフォルト:10 ;推奨式:((core_count * 2)+effective_spindle_count) のパス#eurekaサービス側 ユーレカ: クライアント: サービス - URL: defaultzone:HTTP:// localhostを:10086 /ユーレカの インスタンス: リースは -renewal-間隔- 中:-seconds 5 ハートビート送信するために#5秒間 リース -expiration-を期間- で -seconds:10#10秒間送信期限切れの
マイクロ財やサービス以降に作成された、Zuulへのルーティングルールを追加してください、我々はルールをデフォルトのルーティングを使用しないでください。
application.ymlプロファイルを投写ゲートウェイleyouを、変更します。
Zuul: 接頭辞: / APIの#ルーティングパス接頭辞の ルート: 項目 -service:/商品/ * *#商品はマイクロサービスのパスをマップします
ユーレカパネルを表示します。
10.テストルーティングルール
フロールールをルーティングするかどうかを試験するために、我々はよくとしてコントローラインタフェースアイテムサービスを記述する必要はありませんか?
アクチュエータ:実際には、SpringBoot依存を提供し、必要はありません
長い間、我々が依存しているとして、アクチュエータが追加されると、それは私たちのためにアクセスインターフェイスのシリーズを生成します。
-
/情報
-
/健康
-
/リフレッシュ
-
...
頼る追加:(すでにかけて添加)
<依存性> <のgroupId> org.springframework.boot </のgroupId> <たartifactId>ばねブートスタータアクチュエータ</たartifactId> </依存>
アクセスユーレカコンソールを再起動した後:
アイテム・サービスオーバーホバーは、アドレスが表示されます:
これは、我々がへのアクセスをクリックし、アクチュエータが提供するインターフェース、次のとおりです。
私たちは情報を追加していないので、それは空のJSONですが、ことは確かである:我々はアイテムサービスへのアクセスを持っています。
我々はルートでアクセスしようと次に、ルーティングルールに従って、我々はアドレスにアクセスする必要があります。
http://127.0.0.1:10010/api/item/actuator/info
いくつかのツールや契約の一般的な内容は、我々はあなたがツール・モジュールを作成する必要があり、各サービスを共有することを願っています:leyou-common
モジュールをビルドするMavenの右leyouプロジェクト使用して:
位置情報:
構造:
これは、コーディングは必要ありません。
12.完全な環境を構築するためのプロジェクト