zoukankan      html  css  js  c++  java
  • 《Spring源码深度解析》一

    Spring整体架构

    《Spring源码深度解析》一

    1.1 Spring整体架构

    1.1.1 Core Container:

    模块:Core、Beans、Context和Expression Language

    Core:框架的基础部分, 提供IOC 和依赖注入特性。也包含核心工具类。
    基础概念是BeanFactory, 它提供对工厂模式的经典实现来消除对程序性单例模式的需要, 并真正地允许你从程序逻辑中分离出依赖关系和配置。

    Bean:包含访问配置文件、创建和管理bean以及进行IoC/DI操作相关的所有类

    Context:提供了一种类似于JNDI注册器的框架式的对象访问方法
    ApplicationContext接口是Context模块的关键

    Expression Language:提供了表达式语言
    支持设置/获取属性的值,属性的分配,方法的调用,访问数组上下文(accessiong the context of arrays )、 容器和索引器 、逻辑和算术运算符、命名变量以及从Spring的IoC容器中根据名称检索对象 。它也支持list投影、选择和一般的list聚合。

    1.1.2 Data Access/Integration

    模块:JDBC、ORM、OXM、JMS和Transaction

    JDBC:提供了JDBC抽象层

    ORM:提供了交互层,如JPA/JDO/Hibernate/ibatis

    OXM:提供了一个对Object/XML映射实现的抽象层,包括 JAXB、Castor、XMLBeans、JiBX和XStrearn

    JMS:包含一些制造和消费信息和特性

    Transaction:支持编程和声明性的事务管理

    1.1.3 Web

    模块:Web、Web-Servlet、Web-Structs(被弃用)和Web-Porlet

    Web:提供了基础的面向Web的集成特性,如多文件上传、使用servlet listeners初始化IoC容器以及一个面向Web的应用上下文

    Web-Servlet:MVC实现

    Web-Porlet:提供了Porlet和Web-Servlet模块的MVC实现

    1.1.4 AOP

    模块:Aspect、Instrumentaion

    Aspect:提供了对AspectJ的集成支持

    Instrumentaion:提供了class instrumentation支持和classloader实现,使其可以在特定的应用服务器上使用

    1.1.5 Test

    支持使用JUnit和Test'NG对Spring组件进行测试

    1.2 补充:

    AspectJ神仙操作:

    helloWorld示例:

    《Spring源码深度解析》一

    增加事务:

    《Spring源码深度解析》一

    编译:

    《Spring源码深度解析》一

    输出:

    《Spring源码深度解析》一

  • 相关阅读:
    js学习笔记7----return,arguments及获取元素样式
    js学习笔记6----作用域及解析机制
    js学习笔记5----函数传参
    js学习笔记4----数据类型
    Flashtext 使用文档 大规模数据清洗的利器-实现文本结构化
    Linux之目录的操作(创建、移动、改名、删除、复制)
    Python 异常处理
    Python 内置模块函数filter reduce
    Python处理文件以及文件夹常用方法
    Python 字符串常用方法
  • 原文地址:https://www.cnblogs.com/mxb0611/p/11926846.html
Copyright © 2011-2022 走看看