Spring 框架使用

以個人理解總結:web

  1. 首先須要在web項目中的web.xml進行配置spring容器。
  2. 使用xml配置文件約定spring的配置。
  3. 解決各個bean的聲明定義,依賴注入問題。
  4. 若是是單例模式的bean(默認都是singleton,可修改scope屬性爲prototype),在spring容器加載時,會自動調用bean的構造方法,若是修改bean的構造方法爲帶參數,則會報錯,由於找不到默認無參的構造方法,沒法實例化bean。固然,也能夠使用工廠方法實例化bean。
  5. 使用註解形式,利用spring自動掃描機制很方便靈活的配置bean及其注入關係。
  6. bean的生命週期:
  • 經過構造器或工廠方法建立bean實例
  • 爲bean的屬性設置值和對其餘bean的引用
  • bean的後置處理器 postProcessBeforeInitialization方法
  • 調用bean的初始化方法,此方法須要在xml中進行配置
  • bean的後置處理器 postProcessAfterInitialization方法
  • bean能夠使用了
  • 容器關閉時,調用bean的摧毀方法
  1. @Component、@Controller、@Service、@Respository註解將類歸入IOC容器中管理。
  2. AOP:面向切面編程,抽取橫切關注點(跨越應用程序模塊的通用功能),保留核心邏輯的代碼。 使用@Aspect和@Component註解聲明類爲切面,使用@Before @After註解代表方法先後執行該方法, @AfterReturning返回結果通知,@AfterThrowing異常通知,@Around環繞通知 xml須要配置aop:aspectj-autoproxy</aop:aspectj-autoproxy> 使用@Order指定切面的優先級,使用@PointCut聲明切面表達式讓其餘方法直接引用
  3. 能夠使用JdbcTemplate或者NamedParameterJdbcTemplate(具名參數方式)來訪問數據源
  4. 事務管理:xml配置以下:
    <!-- (事務管理)transaction manager, use JtaTransactionManager for global tx -->  
    <bean id="transactionManager"  
        class="org.springframework.jdbc.datasource.DataSourceTransactionManager" >  
        <property name="dataSource" ref="dataSource" />  
    </bean>  
    <!-- 啓用事務註解,在對應的方法上加上@Transactional便可 -->
    <tx:annotation-driven transaction-manager="transactionManager"/>
相關文章
相關標籤/搜索