Spring Framework Overview

目標(もくひょう)

  • Java エンタープライズ開発(かいはつ)簡素化(かんそか) (Simplify Java Enterprise Development)

アーキテクチャ (Architecture)

Core Container

  graph
	subgraph BeanFactory
	B(Bean)
	Cr(Core)
	end
	Ct(Context)
	SpEL(SpEL)
  1. Bean と Core: IoC と DI の基本(きほん) 機能(きのう)提供(ていきょう)
    • BeanFactory は Bean の作成(さくせい)管理(かんり)使用(しよう)
  2. Context: ApplicationContext インターフェース、Bean のライフサイクルと依存(いぞん) 関係(かんけい)管理(かんり)

Infrastructure

  graph BT
	A(AOP)
	As(Aspects)
	Itt(Instrumentation)
	M(Messaging)
  1. AOP (アスペクト指向(しこう) プログラミング): 宣言的(せんげんてき)方法(ほうほう) でオブジェクトに機能(きのう)追加(ついか) (ログ、セキュリティ、トランザクションなど)。
  2. Instrumentation: JMX を使用(しよう) してアプリケーションを遠隔(えんかく) 監視(かんし)

Data Access Layer

  graph BT
	jd(JDBC)
	orm(ORM)
	trans(Transaction)
	oxm(OXM)
	jms(JMS)
  1. JDBC Helper: JDBC の()(かえ) しコードを大幅(おおはば)削減(さくげん)
  2. ORM (Object Relational Mapping): Hibernate と JPA の統合(とうごう)
  3. JMS (Java Message Service): メッセージングサービスを提供(ていきょう)

Web Layer

  graph BT
	subgraph Home of Spring MVC
	Serv(Servlet)
	WS(WebSocket)
	Web(Web)
	Port(Portlet)
	end

Test Layer

  graph BT
	U(Unit)
	combine(Integration)
	M(Mock)
  1. TDD (テスト駆動(くどう) 開発(かいはつ) )、Mock オブジェクト、コンテナ(がい)単体(たんたい) テストをサポート。

Spring Container

  • コア機能(きのう) :
    • オブジェクトの作成(さくせい)管理(かんり) (IoC)。
    • オブジェクト(かん)依存(いぞん) 関係(かんけい)注入(ちゅうにゅう) (DI)。