SSM 五:Spring核心概念
第五章:Spring核心概念
一.Spring Ioc
优点:
1.低侵入式设计
2.独立于各种应用服务器
3.依赖注入特性将组建关系透明化,降低耦合度
4.面向切面编程的特性允许将通用性任务集中式处理
5:使用第三方框架的良好整合
理解:控制反转:也称依赖注入,是面向切面编程中的一种设计理念,用来降低程序之间的代码耦合度的。
什么是依赖:在代码中一般指通过局部变量,方法参数,返回值等建立的对于其他对象的调用关系。
二:理解面向切面编程:
1面向切面编程(aop)是软件编程思想发展到一定阶段产物,是对面向对象编程(oop)的有益补充
2.面向切面编程设计思想来源于代理设计模式
3.基本概念
切面(Asoect):一个模块化的横切逻辑(或称横切关注点)可能会横切多个对象
连接点:(Join Point)程序执行中的某个具体的执行点。
增强处理(Advice)切面在某个特定链接点上执行的代码逻辑
切入点(Pointcut)对链接点特征进行描述,可以使用正则表达式
目标对象(Target object)被一个或者多个切面增强的对象
AOP代理(aop proxy):由aop狂所创建的对象,实现增强处理方法等功能
织入(Weaving)将增强处理链接到应用程序中的类型或对象上的过程
前置增强,后置增强,环绕增强,异常抛出增强,最终增强类型
三:切入点的表达式(execution)分别显示以下几种
Public * aa(); “*表示匹配所有类型的返回值”
Public void *();“*表示匹配所有的方法名”
Public void aa(..);“..表示匹配所有参和类型”
*com.service.*.*(..):这个表示匹配com.service包下所有类的所有方法
*
com.service..*.*(..):这个表示匹配com.service包及其包下的所有类的所有方法
SSM 五:Spring核心概念的更多相关文章
- Spring 核心概念
Spring 核心概念 引言 本文主要介绍 Spring 源码中使用到的一些核心类 1. BeanDefinition BeanDefinition表示Bean定义,BeanDefinition 中存 ...
- 第一章 spring核心概念
一.Spring作用:管理项目中各种业务Bean(service类.Dao类.Action类),实例化类,属性赋值 二.Spring IOC(Inversion of Control )控制反转,也被 ...
- Spring系列(一):Spring核心概念
一.Spring概念 Spring是一种多层的J2EE应用程序框架,其核心就是管理资源组件以及依赖关系,Spring框架为现代基于java的企业应用程序提供了一个全面的编程和配置模型. 二.Sprin ...
- Spring核心概念和案例
一.Spring概念 1.Spring框架概述 轻量级的Java EE开源框架,它是由Rod Johnson为了解决企业应用程序开发的复杂性而创建, Spring框架提供了一个开发平台,用于整合其他技 ...
- 第五章 Spring核心概念
5.1.1 企业级应用开发 企业级应用是指那些为商业组织,大型企业而创建部署的解决方案及应用,大型企业级应用的结构复杂,涉及的外部资源众多,事务密集,数据规模大,用户数量多,有较强的安全性考虑 ...
- Spring核心概念之AOP
一.AOP 的概念 AOP(Aspect Oriented Programming)的缩写,面向切面编程,主要作用就是对代码进行增强处理. 理解面向切面编程的含义:就是在不改变原有程序的基础上为代码增 ...
- Spring核心概念(一)
1.解决JavaEE的轻量级框架. 2.环境搭建 第一步:导入spring的jar包 第二步:导入配置文件(一般写在resource下面) 第三步:创建一个类(bean) 第四步:在主配置文件中注入这 ...
- Spring 核心概念以及入门教程
初始Spring 在学习Spring之前我们首先要了解一下企业级应用.企业级应用是指那些为商业组织,大型企业而创建并部署的解决方案及应用. 这些大型企业级应用的结构复杂,涉及的外部资源众多,事务密集, ...
- Spring核心概念
Spring是一个轻量级的企业级框架,提供了loc容器,aop实现,DAO/OR支持,Web集成等功能,目标是使现有的JAVA EE技术更易用,并促进良好的编程习惯. 依赖注入让组件之间以配置文件的形 ...
随机推荐
- 如何判断Linux 是32位还是64位
.运行 'uname -m' 命令 上面的命令内涵太多了,可以用这个参数直指人心:'uname -m' . 例如,在我的系统里,它显示了以下信息: $ uname -m i686
- 高效实用的.NET开源项目
似乎...很久很久没有写博客了,一直都想写两篇,但是却没有时间写.感觉最近有很多事情需要处理,一直都是疲于奔命,一直到最近才变得有些时间学习和充电.最近没有事情都会看一些博客和开源项目,发现介绍开源项 ...
- ABAP 内表数据 与 Json串 相互转换
内表: A B C IMINGZHA HAIMINGZ AIMINGZH 1 2 3 4 5 6 Json串: [{a: "IMINGZHA", b: "HAIMIN ...
- Android进程间通信
http://www.cnblogs.com/manuosex/p/3588634.html 一.Linux系统进程间通信有哪些方式? 1.socket: 2.name pipe命名管道: 3.mes ...
- vmware虚拟机安装CentOS-6.5教程
linux是企业最常用的服务器系统之一,CentOS是免费的,所以用的企业也挺多,今天给大家分享怎么在自己电脑的虚拟机中安装CentOS-6.5,以便用来玩耍,没事的时候可以学学linux的一些知识. ...
- WPF DataGrid自动生成序号
需求和效果 应用WPF技术进行开发的时候,大多都会遇到给DataGrid添加序号的问题,今天分享一下查阅了很多stackoverflow的文章后,总结和改进过来的方法,先看一下效果图,文末附Demo下 ...
- SQL 表结构操作
数据库知识总结(表结构操作) 1.创建表Scores 1 create table Scores --表名 2 (Id int identity(1,1) primary key,--设置主键,并且行 ...
- Linux 可运行进程 Runnable Process Definition
From : http://www.linfo.org/runnable_process.html 一个可运行的进程是指该进程的进程状态为TASK_RUNNING. 进程,也可被称为任务,是指一个程序 ...
- 【ASP.NET MVC 学习笔记】- 02 Attribute
本文参考:http://www.cnblogs.com/willick/p/3208427.html 1.特性(Attribute)对程序中的元素进行标注,比如类.字段.方法.属性等. 2.在.NET ...
- js 短信倒计时60s
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...