春ブーツ2.0の学習ノート() - JAVA EEプロフィール

この章の内容:JAVA EE>春>春ブーツ


 A、JAVA EE紹介

1.1のJava EEの利点:障害Web開発、プログラマの技術的な状態の終了は、思考の同じ種類を持つ建築家はどのような構造に考えると、アプリケーションが(エンタープライズアプリケーションやWebサイトを参照してください)を開発します。それは、エンタープライズアプリケーション技術を提供するため、標準化を達成するために、簡略化し、開発を。

             実装仕様:

        • Webサポート:立ち上がりB / S構造、JAVA EE対応するServlet仕様、所定のWebコンテナを有し、サーブレットアセンブリ、ならびにJSP&JSTL処理動的ページ。
        • トランザクションサポート:トランザクションマネージャを提供します。  
        • メッセージングサービス:JMS
        • データベース永続レイヤ:EJB仕様、およびそれ以降のJPAのより実用的な操作性を提案したが、この方法は、データベースにアクセスするために使用しました
        • コンテナ:そのような管理コンポーネント(EJBおよびサーブレット)のような容器、およびそのようなJTS、JMS等の必要なサービス・コンポーネントを提供します。

1.2のJava EEの欠点

      • あまりにも複雑:開発と展開、より複雑な方法
      • 分散追求:ほとんどのアプリケーションでは、すべてのJava EE嘉定分散システムではありません。
      • こうしたのみの取り扱いとJMSメッセージとして:それはタイムリーな人気のあるオープンソースの技術と組み合わせることはできません
      • 高いです

 

二、春

2.1スプリングIoCコンテナとAOP 

   IoCコンテナコア

  春のコンテナにオブジェクトコード中のビジネスでは、春のコンテナが追加通り抜ける注釈プロファイルを初期化し、機能強化するために、ビジネス・オブジェクト・コードに。

  このオブジェクトのメソッドは、コメントを@RequestMappingしている場合、オブジェクトの注釈@Containerの宣言では、春には、このオブジェクトはWebコンテナであると思うだろう、それは、Javaメソッドの呼び出しにクライアントのHTTPリクエストによって開始されます。

  EG  春は通常サービス@、Conponent @、いくつかの@Controllerを提供設定@ 注釈、これらのみ注釈付きのクラスを使用して、春のコンテナに注意を引くし、管理し、注釈に基づいてオブジェクトの意味を強化します。

// HelloworldControllerインスタンス初期スプリング容器は、容器中に、クライアントによって開始さ/sayhello.html要求に対して、メソッドが実行を言うし、自動的に対応するリクエストパラメータ名たとえばメソッドの宣言に従って。

@Controller
パブリック クラスHelloworldController { @RequestMapping( "/sayhello.html" 公共@ResponseBody文字列言う(名前文字列) リターン "こんにちは" + }

 

  egSpringは、管理や、一般的なビジネス・ロジックに使用される一般的な注釈@Serviceなどの任意のオブジェクトを、高めることができます。コンテナ管理もBeanのマネージドBean管理することができ@Serviceこの例@Autowired自動注入を使用してクラスHelloworldControllerで、UserServiceのクラスを注釈を付けたとして、強化提供します。

@Controller
 パブリック クラスHelloworldController { 
    @Autowired UserServiceのUserServiceの。    
}

 

 

AOP(アスペクト指向プログラミング)

動的に事前コンパイルまたは実行時の方法によりターゲットオブジェクトに機能を追加。AOP別のエンタープライズ・アプリケーション・ビジネス・ロジックおよびシステム・レベル、トランザクションサービスなどのサービス、ならびに監査、アプリケーションや他のコードへのセキュアなアクセス。たとえば、ユーザーのアクセス制御を実現するために、機能はコントローラに次のような各メソッドを、動的にユーザーを追加するために、春AOP許可検証機能で、コントローラの各メソッドのためのカスタム注釈を使用することがあります:

(「/ adduser.html」@RequestMapping 
@関数(「user.add」公衆@ResponseBodyは、アドユーザーの文字列(文字列名){ 
    ... 
} //関数注釈文字列を受信し、カスタム注釈でありますこれは、サービス機能に対応するコントローラメソッドを表します。ユーザーは「user.add」機能、データベース内の設定にアクセスできるかどうか。

 

 三、春ブーツ

春ブーツ春の簡素化、アプリケーションの開発には、Springアプリケーションを実行することができます設定する必要がありません。<たartifactId>ばねブートスタータウェブ</たartifactId>:スターターを介してシステムレベルのサービスを提供するために、そのようなWebアプリケーションを開発するように、のみでのpom.xml(達人)に宣言する必要があります

 春ブーツは、多くの利点があります、このようなビルトイン提供するために、TomcatやJettyはコンテナとしての複雑な設定を必要としません。ジャーパッケージ管理に頼ることで、組立技術を自動化。

 

四、こんにちは、春ブーツ

4.1アプリケーションプロジェクトは春ブーツになって:

   簡単なWebアプリケーション:まず、Mavenプロジェクトを作成します。そして、pom.xmlファイルを見つけ、春ブートアプリケーションにプロジェクトを作るために次のエントリを追加します。

< > 
    < groupIdを> org.springframework.boot </ groupIdを> 
    < たartifactId >春・ブート・スターター・親</ たartifactId > 
    < バージョン> 2.0.0.M4 </ バージョン> //版本可能会有问题。
< / >

 

 

 ウェブ4.2のアプリケーションが構築されているので、そう、依存春・ブート・スターター・ウェブを追加し、以下を追加します

< 依存性> 
    < 依存性> 
        < のgroupId > org.springframework.boot </ のgroupId > 
        < たartifactId >ばねブートスタータウェブ</ たartifactId > 
    </ 依存> 
< 依存性>

 

注意:春ブート-依存関係はSpring MVCの、RESTfulなサービスのためのビルトインのTomcat、およびサポートにデフォルト設定されます。 

 

 4.3一般的なカテゴリのクラスに春ブーツ

 一般的なJavaクラスCh1Applicationため、@SpringBootApplication前に行を追加し、メインメソッドの線SpirngApplication.run(C h1Application.class、引数)を追加

コード例:

パッケージcom.bee.sample.ch1。

@SpringBootApplication
パブリック クラスCh1Application { 公共 静的 ボイドメイン(文字列[]引数){ SpringApplication.run(Ch1Application。クラス、引数)。 } }

 

 このクラスは、実行することができ、完全に春ブートアプリケーションになります。ただ、ノー書かれたコントローラので、それはブラウザを介してアクセス可能ではなく、図に示すように、その後、HelloworldControllerと呼ばれるクラス、パッケージ名com.bee.sample.chq.controllerを作成します。

パッケージcom.bee.sample.ch1.controller 

@Controller 
パブリック クラスHellowwoeldController { 
    @RequestMapping( "/say.html" 公共@ResbonseBody文字列の発言(){
         リターン "こんにちは春ブーツを" 
    }     
}    

 

注:@Controllerは、そのようなことを示すSpring MVCのアノテーションはWeb要求を処理するための責任があるあります

     @RequestMapping Spring MVCのアノテーションは、要求されたパスのマッチング処理が呼び出された場合は、注釈付き表示しています

     @ResponseBodyは、この方法は、テキストではなく、ビューの名前を返すことを示しています

 

 4.4ホット・デプロイ

このクラス、非常に不便を変更する時には、上記の例では、起動時に再実行する必要があります。ソリューションは、春ブーツ・デベロッパーツールの依存関係です。変更されたクラスの後、春のブートが自動的に再起動します。

< 依存性> 
    < のgroupId > org.springframework.boot < のgroupId > 
    < たartifactId >ばねブートデベロッパーツール< artifacId > 
    < オプション>トゥーレ</ オプション> 
</ 依存>

 

 

4.5 RESTサポートを追加します

システム間の多くの方法の呼び出しがあり、安らかは良いものです。春ブーツは簡単にRESTfulなアプリケーションをサポートすることができます。以下のような:

@RestController
 パブリック クラスUserReditRestController { 
    @RequestMapping(値 = "/ usercredit / {ID}" パブリック整数getCreditLevel(@PathVariable文字列ID){
             //はシミュレートユーザの信用格付けのID 
            戻り 3 ; 
        } 
} //この時点では、アクセス経路でありますhttp://127.0.0.1:8080/usercredit/123番号123は任意です。対応するパラメータのID getCreditLevel。

 

注:複数のシステムへの相互アクセスの場合は、直接お互いのデータベースにアクセスするが、同様のRESTfulなアーキテクチャであるべきではない、ロジック・インターフェースをカプセル化する最善の方法です。このように、他のシステムデータベースの変更、ビジネス・ロジックの変更やバージョンアップ。これは、他のシステムには影響しません。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/wuguodong-blog/p/12003707.html