Why Spring


IOC(Inverse of Control)/DI(Dependency Inverse):制御反転と依存注入.
オブジェクトの前の依存関係をコンテナで管理します.オブジェクト自体ではなく、コントロール反転といいます.
IOCは一つの思想です.Springの基本思想はIOC/DIです.
SpringはIOC容器です.
工場の氾濫の問題を解決しました.
[リスト]
  • Spring依存パッケージ:
  •      Spring_HOME\dist\spring.jar
         Spring_HOME\lib\jakata-commons\commons-loging.jar
         Spring_HOME\lib\log 4 j\log 4 j-1.
  • Copy spring's configration file to project src folder.
  • は、対応するクラスにset方法を提供し、Springのプロファイルにオブジェクトを提供するように配置する.
  •    コンストラクタによる注入も可能です.
       ポイント:appication Contect.xml Springプロファイル.
  • appication Contect.xml
  • 
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!--
      - Application context definition for JPetStore's business layer.
      - Contains bean references to the transaction manager and to the DAOs in
      - dataAccessContext-local/jta.xml (see web.xml's "contextConfigLocation").
      -->
    <beans xmlns="http://www.springframework.org/schema/beans"
    		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    		xmlns:aop="http://www.springframework.org/schema/aop"
    		xmlns:tx="http://www.springframework.org/schema/tx"
    		xsi:schemaLocation="
    			http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
    			http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
    			http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
    	<bean id="userDao4Mysql" class="com.cnet.spring.dao.UserDao4Mysql"></bean>
    	
    	<bean  id="userDao4Oracle" class="com.cnet.spring.dao.UserDao4Oracle"></bean>
    	
    	<bean id="userManager" class="com.cnet.spring.manager.UserManager">
    		<property name="userDao" ref="userDao4Mysql"/>
    	</bean>
    	
    </beans>
    
    [/リスト]