Spring-ioc-aop

Spring-ioc介绍:

springioc就是控制反转,将创建对象的权力交给spring来管理,如果我们不使用spring管理,创建对象就是通过new对象的方法创建。当我们使用了spring之后,通过ioc容器来管理对象,在项目启动加载的时候,我们可以通过bean标签或者注解的形式创建对象,将对象创建好之后,预存在spring的容器当中,当我们需要使用对象的时候,可以通过name或者type类型注入,我们可以手动注入,也可以自动注入。ioc常用的注解:@Controller, @Service, @Component, @repository 这个是用来实例化的注解创建对象,@Autowire是用来注入的注解,根据类型自动注入,从创建好的变量赋值给需要使用的变量引用。spring创建的对象默认都是单例的,是为了节省内存的开销,以及方便有效的进行跳转,事务和数据源控制,如果需要多例可通过@Scope进行设置。当然ioc也可以通过bean标签继续创建对象,通常配置类型类都由bean标签创建,例如拦截器,数据源,事务管理器,连接工厂等。

Spring-aop介绍:

springaop主要是面向切面编程,代理模式,在程序中主要用来解决一些系统层面的问题,比如日志,事务等。
如果使用aop控制事务的话,先在spring配置文件中创建一个事务管理器,并且注入数据源datasource,那么整个事务管理器就可以管理整个数据源的事务。接着在配置整个事务的advice配置方法名,传播特性,隔离级别,回滚策略。通常方法名配置add,update,delete,insert等增删改的方法名可以参与事务,然后再配置这个方法名的传播特性parpagation,默认设置为required,意思是如果存在一个事务,融入当前事务,没有事务则开启事务,这个特性对事务的嵌套最为合理,还有隔离级别isolation,默认值为default,意思是采用数据库的隔离级别。例如:read_uncommit 意思是允许读取未提交的数据,这是对其的隔离级别,还有read_commit ,允许读取已提交的数据,一般采用默认的就行。

单例和多例

单例(singleton)和多例(prototype)都是对象模式
单例就是所有请求都用一个对象来处理,使用单例是因为没必要每个请求都新建一个对象,浪费cpu,浪费内存;
多例指的是每个请求用一个新的对象来处理,使用多例是为了防止并发问题,即一个请求改变了对象的状态,当对象含有可变状态时,用多例。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值