zoukankan      html  css  js  c++  java
  • Spring In Action(第三版)读书笔记

    第一章 Spring之旅

    POJO: plain old java object 简单的java对象

    DI:Dependency Injection 依赖注入

    构造器注入:构造时作为构造器参数传入

    private Quest quest;
    public BraveKnight(Quest quest){
        this.quest = quest;
    }

    其中 Quest是个接口,用以在于实现松耦合

    测试的时候可以使用mock实现。如下:

    Quest mockQuest = mock(Quest.class);
    BraveKnight knight = new BraveKnight(mockQuest);

    装配wiring: 创建组件之间的协作行为.

    XML配置装配

    <bean id="quest" class="test.SlayDragonQuest"/>
    <bean id="knight" class="test.BraveKnight">
        <constructor-arg ref="quest"/>
    </bean>

    通过应用上下文(Application Context)装载Bean的定义

    ApplicationContext context= new ClassPathXmlApplicationContext("knight.xml");
    Knight knight = (Knight) context.getBean("knight");

    AOP: Aspect-oriented Programming 应用切面编程--分离成可重用的组件.

    Spring容器:Bean factories,最简单的容器

    应用上下文:基于Bean factories之上,提供面向应用的服务。

    ClassPathXmlApplicationContext——类路径下的xml文件

    FileSystemXmlApplicationContext——绝对路径下的xml文件

    XmlWebApplicationContext——web应用下的xml文件

    Spring框架(分类比较杂,常见的有如下)

    1. AOP模块

    2. DAO模块(data access object)

    ORM: object-relational mapping 对象关系映射

    把关系型数据库中的关系数据映射成为程序中的对象。

    3. web模块

    4. spring mvc

    *************************************************************************************

    第二章 装配Bean

    构造器注入

    <bean id="duke" class="test.Duke">
        <constructor-arg value="15"/><!-- 注意 如果注入另一个bean,需用 ref, not value-->
    </bean>

    通过工程方法创建bean

    -- 可以把没有公开构造函数的类配置为一个bean

    <bean id="singleton" class="test.Singleton“ factory-method=”getInstance"/>

    Bean的作用域

    singleton    (默认)在每个Spring IoC容器中一个bean定义对应一个对象实例。

    prototype    一个bean定义对应多个对象实例。

    request     在一次HTTP请求中,一个bean定义对应一个实例;即每次HTTP请求将会有各自的bean实例, 它们依据某个bean定义创建而成。该作用域仅在基于web的Spring ApplicationContext 情形下有效。

    session     在一个HTTP Session 中,一个bean定义对应一个实例。该作用域仅在基于web的SpringApplicationContext 情形下有效。

    global-session   在一个全局的HTTP Session 中,一个bean定义对应一个实例。典型情况下,仅在使用portlet context的时候有效。该作用域仅在基于web的Spring ApplicationContext 情形下有效。

  • 相关阅读:
    单例模式的四种方式
    创建者模式
    抽象工厂模式
    工厂方法模式
    【位运算符与逻辑运算符知识点】【二进制枚举子集】【just for 状压】
    【数学基础】【欧拉定理模板】【费马小定理】
    【练习赛补题】poj 3026 Borg Maze 【bfs+最小生成树】【坑~】
    【数学基础】【欧拉函数解析模板】【欧拉筛法实现求1~n】【求某个数字n】
    【 数学基础】【素数线性筛法--欧拉筛法模板】【普通筛法的优化】
    【练习赛2补题】poj 2325 Persistent Numbers 【高精度除法+贪心】
  • 原文地址:https://www.cnblogs.com/dorothychai/p/3949339.html
Copyright © 2011-2022 走看看