SSM框架基础知识点

spring

spring IOC创建对象的两种方式

1.创建容器对象
2.在当前包的所在类下找有关bean的配置文件 测试方便

spring主配置文件创建对象的方式
1.调用无参构造器
2.调用带参构造器 
3.用工厂模式创建 工厂里面分为静态方法和非静态方法

spring给对象属性赋值依赖注入的方式
1.构造函数赋值
2.set方法注入值
    分为 普通字段赋值集合属性赋值(list map property)

di 处理依赖关系四种方式
最常用的在主配置文件中通过set方法注入,在service接收dao注入值,在controller接收service注入值 
内部bean
p名称空间,给属性注入值
自动装配 配置简单,但维护麻烦

配置方式和注解方式的区别
配置便于维护 但配置太多很繁琐
注解开发方便简化配置,但不利于后期维护,如果修改对象创建,关系处理等需要改代码


Java中的代理 

  • 静态代理

    1.目标对象必须实现接口
    2.代理对象要实现和目标对象一样的接口

  • 动态代理(jdk代理)

    目标对象一定要实现接口,代理对象不用实现接口
Cglib代理(spring默认支持) 也叫子类代理
    jdk动态代理有一个限制,使用动态代理的对象必须实现接口
    如果向代理没有实现接口类,使用cglib
    1.目标对象可以不实现接口
    2.目标类不能final 如果final报错
    3.方法是final/static,不会被代理拦截,会直接执行目标对象方法
    
代理总结
    1.目标对象有实现接口,使用jdk动态代理
    2.没有实现接口,使用cglib代理
    3.没有实现接口且为final,不能进行aop编程,不能生成代理会报错
    
spring生成代理对象的过程
    1.创建容器对象时,根据切入点表达式拦截的类,生成代理对象
    2.目标对象有实现接口,使用jdk动态代理
    3.没有实现接口,使用cglib代理
    4.从容器获取代理后的对象
    5.执行代理对象方法,运行时动态植入切面类中的通知

AOP(面向切面编程)是什么
    实现原理就是Java动态代理,但是动态代理必须实现接口,所以spring的aop是用cglib实现的
    
事务
    一组操作的执行单元,相对于数据库操作来讲事务管理的是一组SQL指令(增删改查)
    事务的一致性要求操作必须全部执行成功,出现任何一条SQL语句没有执行成功,这一组
    操作会全部回滚
    
spring声明式事务管理,就是粗粒度的事务控制

spring创建SessionFactory的方式
所有配置都在spring中完成

spring对dao操作的支持
spring提供了JDBCTemple模版的工具类,对原始的jdbc操作进行了简化
 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值