【项目基础】容器、AOP理论篇
一、容器(砂锅)
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理论篇的更多相关文章
- Java Web基础 --- Servlet 综述(理论篇)
摘要: Web 技术成为当今主流的互联网 Web 应用技术之一,而 Servlet 是 Java Web 技术的核心基础.本文首先从请求/响应架构应用的大背景谈起 Servlet 的由来,明确 Ser ...
- PHP丨PHP基础知识之PHP基础入门——函数「理论篇」
前两天讲过PHP基础知识的判断条件和流程控制,今天来讲讲PHP基础知识之PHP基础入门--函数! 一.函数的声明与使用 1.函数名是标识符之一,只能有数字字母下划线,开头不能是数字. 函数名的命名,须 ...
- PHP丨PHP基础知识之流程控制WHILE循环「理论篇」
昨天讲完FOR循环今天来讲讲他的兄弟WHILE循环!进入正题: while是计算机的一种基本循环模式.当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环.while语句的一般表达式为:whil ...
- PHP丨PHP基础知识之条件语IF判断「理论篇」
if语句是指编程语言(包括c语言.C#.VB.java.php.汇编语言等)中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一. if语句概述 if语句是指编程语言(包 ...
- PHP丨PHP基础知识之条件语SWITCH判断「理论篇」
Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($control ...
- FPGA基础学习(4) -- 时序约束(理论篇)
在FPGA 设计中,很少进行细致全面的时序约束和分析,Fmax是最常见也往往是一个设计唯一的约束.这一方面是由FPGA的特殊结构决定的,另一方面也是由于缺乏好用的工具造成的.好的时序约束可以指导布局布 ...
- RabbitMQ学习总结 第一篇:理论篇
目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...
- 14 微服务电商【黑马乐优商城】:day01-springboot(理论篇)
本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) :day01-springboot(Thyme ...
- 14 微服务电商【黑马乐优商城】:day02-springcloud(理论篇二:知道什么是SpringCloud)
本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) day02-springcloud(理论篇一: ...
随机推荐
- Laravel修炼:服务提供者
前言 上一篇博客文章收集了关于Laravel服务容器的相关知识(传送门),我们知道了服务容器主要有绑定和解析两个重要功能,那么Laravel这个框架集齐了如此多功能,我们项目可能还需要另外引入一些 ...
- CKEditor高级编辑器
是否感觉后台分类描写叙述信息.商品描写叙述信息以及文章描写叙述信息 编写时很的不方便?有时候会将word的格式也复制过来了?那这个插件就比較适合了. 本插件使用CKEditor最新版本号,复制过来的内 ...
- atitit.js 与c# java交互html5化的原理与总结.doc
atitit.js 与c# java交互html5化的原理与总结.doc 1. 实现html5化界面的要解决的策略 1 1.1. Js交互 1 1.2. 动态參数个数 1 1.3. 事件监听 2 2. ...
- Android设计模式(十二)--抽象工厂模式
问题: 抽象工厂模式,是一个,狠恶心的模式,那么这个模式在Android有没实用到过呢? 1.定义: 抽象工厂模式:为创建一组相关或者是相互依赖的对象提供一个接口,而不须要指定他们的详细类. 2.使用 ...
- DMA在FPGA的应用之我见
首先,来做一个简单的实验,利用DMA来实现on-chip-memory和SRAM之间的传输,同时也在做一个关于SRAM不同地址之间的传输. 一.硬件设计 1.首先设计自己的SOPC结构,包括CPU.j ...
- [UOJ#334][NOIP2017]列队 平衡树/线段树/树状数组
题目链接 题意不说了,一辈子也忘不掉 解法1.平衡树 这题就是平衡树裸题,每一行开一棵维护前 \(m-1\) 个,最后一列单独维护,因为很多人没有用到,所以平衡树每个节点是一个区间(pair),分裂时 ...
- thinkphp5项目--企业单车网站(一)
thinkphp5项目--企业单车网站(一) 项目地址 fry404006308/BicycleEnterpriseWebsite: Bicycle Enterprise Websitehttps:/ ...
- zzulioj--1801--xue姐的小动物(水题)
1801: xue姐的小动物 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 594 Solved: 168 SubmitStatusWeb Boar ...
- OpenGL编程逐步深入(四)Shaders
OpenGl 中的 Shader在一些中文书籍或资料中都被翻译为"着色器", 单从字面意思也看不出Shader到底是什么,Shader实际上就是一段代码,用于完成特定功能的一个模块 ...
- Domino服务器SSL的配置录像
Domino服务器SSL的配置录像 格式:avi, 大小:25M 时长: 6分钟 本文出自 "李晨光原创技术博客" 博客,转载请与作者联系!