一、容器(砂锅)

1、概念:

容器是应用server中位于组件和平台之间的接口集合

2、应用:

容器一般位于应用server之内,由应用server负责载入和维护。一个容器仅仅能存在于一个应用server之内。一个应用server能够建立和维护多个容器

容器一般遵守可配置的原则,即容器的使用者能够通过对容器參数的配置,来达到自己的使用需求。而不须要改动容器的代码

3、举例:

有一个房间(这里的房间相当于容器),我们将空调(这里的空调相当于调节室内温度的方法)放到房间里(将空调放到房间里就相当于给容器设定了调节温度的方法),当不论什么一个人(这里的不论什么一个人相当于不论什么一个对象)进入房间之后他就有了调节温度的方法,当他离开之后也就失去了容器中的方法

二、AOP(双面胶)

1、概念:

AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和执行期动态代理实现程序功能的统一维护的一种技术

2、应用:

AOP能够定义交叉的关系,并将这些关系应用于跨模块的、彼此不同的对象模型。

AOP同一时候还能够让我们层次化功能性而不是嵌入功能性,从而使得代码有更好的可读性和易于维护

3、举例:

这里有四个不同的对象分别为A、1、%、@,AOP里面封装了一个连接的方法,这个时候就能够通过AOP强制赋予这四个对象,使他们都有了连接的方法,从而A、1到了一起,%、@到了一起(这里能够随意将其相互连接)。

    这个样例不太形象,那么我就说一个现实一点的,我们身边给男女牵红线的。都叫媒婆(这里的媒婆就是AOP),媒婆有牵手的方法。她将自己的牵手方法赋予切割两地的男女。使他们进行牵手。

三、容器和AOP差别

容器:是一个对象有了某种需求,去主动要求进入容器中。从而获得对应的方法不用自己再去封装方法了

    AOP:每一个对象不用去考虑自己须要什么,通过AOP被动得到对应的方法

四、容器和AOP结合

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

如图所看到的,给容器加入权限、日志、多线程等功能。通过AOP将各个系统放入容器中。使得各个系统拥有相应的功能

五、总结

今天听了老师的讲课收获特别大。对于容器和AOP如今有了一个大概的概念,运用到我们的学习中来,首先将自己放到容器中,也就是要学习每个细小的知识点,容器中的东西都要去弄个明确,以后要学习AOP的精神。依据自己的需求去寻找自己不熟悉的知识点来提升自己

    以后运用的时候相信理解会更加深刻的

【项目基础】容器、AOP理论篇的更多相关文章

  1. Java Web基础 --- Servlet 综述(理论篇)

    摘要: Web 技术成为当今主流的互联网 Web 应用技术之一,而 Servlet 是 Java Web 技术的核心基础.本文首先从请求/响应架构应用的大背景谈起 Servlet 的由来,明确 Ser ...

  2. PHP丨PHP基础知识之PHP基础入门——函数「理论篇」

    前两天讲过PHP基础知识的判断条件和流程控制,今天来讲讲PHP基础知识之PHP基础入门--函数! 一.函数的声明与使用 1.函数名是标识符之一,只能有数字字母下划线,开头不能是数字. 函数名的命名,须 ...

  3. PHP丨PHP基础知识之流程控制WHILE循环「理论篇」

    昨天讲完FOR循环今天来讲讲他的兄弟WHILE循环!进入正题: while是计算机的一种基本循环模式.当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环.while语句的一般表达式为:whil ...

  4. PHP丨PHP基础知识之条件语IF判断「理论篇」

    if语句是指编程语言(包括c语言.C#.VB.java.php.汇编语言等)中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一. if语句概述 if语句是指编程语言(包 ...

  5. PHP丨PHP基础知识之条件语SWITCH判断「理论篇」

    Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($control ...

  6. FPGA基础学习(4) -- 时序约束(理论篇)

    在FPGA 设计中,很少进行细致全面的时序约束和分析,Fmax是最常见也往往是一个设计唯一的约束.这一方面是由FPGA的特殊结构决定的,另一方面也是由于缺乏好用的工具造成的.好的时序约束可以指导布局布 ...

  7. RabbitMQ学习总结 第一篇:理论篇

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  8. 14 微服务电商【黑马乐优商城】:day01-springboot(理论篇)

    本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) :day01-springboot(Thyme ...

  9. 14 微服务电商【黑马乐优商城】:day02-springcloud(理论篇二:知道什么是SpringCloud)

    本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) day02-springcloud(理论篇一: ...

随机推荐

  1. SCU 1095运送物资(最短路)

    SCU 1095运送物资(最短路) X国发生了内战.起义军得到了广大人民的支持.在一次战役中,反动军队结集了大量兵力,围攻起义军的主堡W城.为支援前线,后方各个供给基地城市纷纷准备将物资运往W城.各基 ...

  2. 洛谷 P1171 售货员的难题

    P1171 售货员的难题 题目背景 数据有更改 题目描述 某乡有n个村庄(1<n<20),有一个售货员,他要到各个村庄去售货,各村庄之间的路程s(0<s<1000)是已知的,且 ...

  3. EBS 第一个项目 学习总结 ---- 发运模块

    EBS 组织架构: (一)业务组(BG) (二)法律实体(LE) (三)业务实体(OU) (四)库存组织(INV) (五)公司成本中心(Cost Center) (六)HR组织 (七)多组织接入控制 ...

  4. CCNP路由实验之十 组播(多播)

                        CCNP路由实验之十 组播(多播) 种方法: 在交换机上配置静态的多播MAC地址到用户接口的映射 使用CGMP.执行CGMP的多播路由器能够将用户发送给自己 ...

  5. JS控制光标定位,定位到文本的某个位置

    这是一个数字密码,要能够智能的跳转到文本的某个位置,就需要通过JS来控制跳转! 1.onkeyup监听 <input class="put" id="number- ...

  6. 8. java操作mongodb——查询数据

    转自:https://www.cnblogs.com/adjk/p/6430074.html 通过find方法查询集合中的文档信息 ---------------------------------- ...

  7. centos7 ssh免口令认证登录

    摘要:centos7, xshell, 公钥,  ssh ssh登录方式有口令认证登录和密钥认证登录 接下来本次介绍是ssh密钥登录方式 (1)产生公钥 (2)将公钥放置到centos7的(/root ...

  8. TortoiseSvn介绍 客户端

    转载自:http://www.cnblogs.com/lyhabc/articles/2482381.html TortoiseSvn 是 Subversion 版本控制系统的一个免费开源客户端,可以 ...

  9. @Html.Raw() 方法输出带有html标签的字符串

    @Html.Raw() 方法输出带有html标签的字符串,如:@Html.Raw("<div style='color:red'>输出字符串</div>") ...

  10. ZOJ 3175 Number of Containers 分块

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3216 乱搞的...watashi是分块做的...但我并不知道什么是分块...大 ...