spring基础

ゝ一世哀愁。 2023-09-25 19:41 178阅读 0赞

IoC:控制反转:使用对象时,在程序中不要主动使用new产生对象,转换由外部提供。对象的创建控制权由程序转移到外部,这种思想称为控制反转。可以降低耦合度
Spring技术实现了Ioc,Spring提供了一个容器,称为IoC容器,用来充当IoC思想中的外部。
IoC容器负责对象的创建,初始化等一系列操作,被创建或被管理的对象在IoC容器中统称为bean
DI 依赖注入
在容器中建立bean与bean之间的依赖关系的整个过程,称为依赖注入
AOP:面向切面编程
作用:在不惊动原始设计的基础上为其进行功能增强

IoC控制反转
1、将对象放入容器
在applicationContext.xml中定义bean,id为它的标识,class为依赖注入的全路径

2、从容器中取出
获取applicationContext对象
ApplicationContext ctx=new ClassPathXmlApplicationContext(“applicationContext.xml 配置文件”);
ctx.getBean(“配置文件中bean的id”)
Spring默认取出的bean是单例的,Spring默认使用无参的构造方法实例化bean
BeanFactory是IoC容器的顶层接口

DI依赖注入
例如容器中service需要dao的注入,在service的bean中增加property标签(构造器注入为constructor-arg 里面的name指构造的形参),里面有name和ref,name指的是在service中定义的dao的名称(private BookDao bookDao),
ref指的是dao所配置bean的id(如果注入的是简单类型,将ref换成value即可,value为简单类型的值)
在service的实现类中setter或者构造器完成注入public void setBookDao(BookDao bookDao) this.bookDao = bookDao

依赖自动装配
在bean中加入autowire=”byType”(按类型装配,最常用),需要搭配set方法使用,同时还需要自动装配所需要的bean(按类型,实现类必须唯一)
如果是按名称自动装配需要bean的id和private所定义的名称相同
自动装配不能对简单类型进行操作

AOP
连接点:程序执行中的任意位置。在SpringAOP中,理解为方法的执行

切入点:匹配连接点的式子
在SpringAOP中,一个切入点可以只描述一个具体方法,也可以匹配多个方法
一个具体方法:com.heima.dao包下的BookDao接口中无形参无返回值的save方法
匹配多个方法:所有的save方法,所有的get开头方法,所有以Dao结尾的接口的任意方法,所有带一个参数的方法

通知:在切入点处执行的操作,也是共性功能
在SpringAOP中,功能最终以方法的形式呈现

1、定义通知
public void method1(){//该方法是一个通知
System.out.println(System.currentTimeMillis());
}

2、定义无参无返回值的空方法,使用注解标记为一个切入点
@Pointcut(“execution(void com.heima.dao.BookDao.update())”)//定义一个切入点
private void pt(){}

3、在定义的方法上用注解绑定通知和切入点
@Before(“pt()”)//绑定通知和切入点
4、在此类中用注解加载,并标记这个一个aop
@Component//告诉spring来加载
@Aspect//告诉spring这是一个做aop的

5、在配置类中开启Spring对AOP注解驱动支持

@EnableAspectJAutoProxy//告诉程序要用注解开发aop

spring事务的作用:在数据层或业务层 保障一系列数据库操作同成功同失败
@Transactional//代表开启事务,一般写在接口上

@EnableTransactionManagement:开启注解式事务驱动

发表评论

表情:
评论列表 (有 0 条评论,178人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Spring基础

    的网站:[欢迎大家访问][Link 1] ![format_png][] Spring基础 概念: 是一个轻量级的IOC(控制反转)和AOP(面向切面编程...

    相关 Spring基础

    、Ioc容器是什么? Spring IOC 负责创建对象,管理对象(通过依赖注入(DI),装配对象,配置对象,并且管理这些对象的整个生命周期)。 2、DI(Dep...

    相关 spring基础

    IoC:控制反转:使用对象时,在程序中不要主动使用new产生对象,转换由外部提供。对象的创建控制权由程序转移到外部,这种思想称为控制反转。可以降低耦合度 Spring

    相关 spring基础

    spring基础 更多文章欢迎访问个人博客 [www.herobin.top][] Spring: 轻量级的控制反转(IOC)和面向切面(AOP)的容器框架. >

    相关 spring基础

    为什么要使用Spring? spring提供IOC技术,容器会帮你管理依赖的对象,从而不需要自己创建和管理依赖对象了,更轻松的实现了程序的解耦。 spring