SSM框架:Spring框架

1.Spring简介:

Spring是一个开放源代码的设计层面框架,它解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。

1.AOP编程(动态代理):日志监控、性能测试、事物管理等

2.IOC容器存储任意的Bean对象,因此可以管理任意类间的依赖关系,降低耦合度

3.spring相当于一个粘合剂,整合其他优秀的框架:将mybatis的核心类交给spring , 其他框架的核心类交给spring

2.IOC控制反转

控制反转,即是将对象的创建权利交给IOC容器。我们在以前使用对象的时候都需要new关键字,IOC控制反转可以在使用对象的时候不适用new关键字。只需要将bean交给容器。容器会管理类之间的依赖关系,具体步骤如下:

1.导入Spring相关的jar包;

2. 创建ioc.xml的配置文件,导入固定格式的标签头



           
           
           
           
           		
              

 3.bean:依赖类UserDaoImpl  -- 类似于操作层Dao

public class UserDaoImpl {
	public void add() {
		System.out.println("add --- 解除依赖");
	}
}

 4.bean:类UserServiceImpl,依赖UserDaoImpl  -- 类似于服务层Service

public class UserServiceImpl {
	//属性为引用数据类型
	UserDaoImpl userDaoImpl; 
	public UserDaoImpl getUserDaoImpl() {
		return userDaoImpl;
	}
	//再利用IOC容器解依赖时,需要属性有set方法 -- set注入
	public void setUserDaoImpl(UserDaoImpl userDaoImpl) {
		this.userDaoImpl = userDaoImpl;
	}

	public void add() {
		userDaoImpl.add();
	}
}

5.测试类 

public class Text {
	public static void main(String[] args) {
		//加载配置文件,获取容器对象
		ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("com/_51doit/ioc2/ioc.xml");
		//容器对象中存储任意Bean对象,通过getBean()方法得到类对象,传入参数是ioc.xml配置文件中Bean标签的id号
		UserServiceImpl userServiceImpl = (UserServiceImpl)context.getBean("userServiceImpl");
		userServiceImpl.add();
	}
}
======================================
add --- 解除依赖

3.AOP面向切面

动态代理:在目标类的那个方法(依赖Spring-expression切入表达式的jar包)上的那个位置(通知类型)添加什么样的增强方法。

target:目标类,需要被代理的类

advice:增强类或者指代增强类中所有的方法

aspect:切面,增强类中的方法作用在切入点前后的关系成为切面

joinpoint:连接点,目标类中所有的方法

pointcut:切入点,真正被增强的方法

wearing:植入,增强类的方法作用字切入点上的过程成为植入

proxy:代理对象,通过植入后形成代理对象

通知类型:增强类的方法作用在切入点的那个位置

 通知类型包括:

前置:在目标类方法前增加增强逻辑

后置:在目标类方法后增加增强逻辑

环绕:在目标类方法前后增加增强逻辑

异常:目标类方法出现异常时该方法才执行

最终:类似于finally,是最终必须执行的方法

引介:

你可能感兴趣的:(javaWeb)