1.Spring是什么
Spring是分层的JavaSE/EE应用full-stack 轻量级 开源的 半成品框架,以 IOC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。
2. Spring的事务具有4个属性:原子性、一致性、隔离性、持久性。
3.Spring的优势
1.方便解耦,简化开发。
2.方便继承各种优秀的框架。
3.方便程序测试。
4.切面方程的支持。
5.声明式事务的支持@Transactional(串三克神)。
6.降低JavaEE,ApI的使用难度。
4.IOC它是控制反转的意思就是创建一个对象然后把他放进Bean容器里然后让Spring来控制这个对象。IOC还有一个别名叫DI它是实现IOC的,依赖注入(依赖: 两个对象之间的关系,比如service想要调用dao的方法,那么service里就需要dao对象,这就是依赖。
注入:就是将dao需要service里的这个类dao把这个类给了service这个类就是需要注入的这就是注入)。DI有两中注入方式一种是set注入一种是构造注入。
5.Bean的标签里面有id:Bean实例在Spring容器中的唯一标识,class:Bean的全限定名,scope:范围配置它里面有单例模式singleton(森包ten)和多例模式prototype(破布ten可)
6.sconpe生命周期:
当sconpe的取值为singleton(森包ten)时Bean的实例化个数为1个,
Bean的实列化时机:当Speing核心文件被加载时,实列化配置的Bean实列。
生命周期:
当应用加载,创建容器时,对象就被创建了只要容器一直在对象就一直在只有应用被卸载是销毁容器对象就被销毁了。
当sconpe的取值为prototyp(破布ten可)时Bean的实列化个数为多个,
Bean的实列化时机:当调用getBean()方法时实例化Bean
生命周期:当使用对象时,创建新的对象实列只要对象一直在使用对象就一直存活,当对象长时间不用时就会被Java中的垃圾回收机制回收。
Spring的常用注解:
@Component(坑跑嫩t):使用子类上实例化Bean
@Controller:使用在Wed层类上用于实例化Bean
@Service:使用在Service层类上用于实例化Bean
@Ropositorg(瑞跑si推):使用在dao层上用于实例化Bean
@Autowired:使用在字段上用于根据类型依赖注入
@Qualitier(夸了疼):结合@Ropositorg+@Autowired一起使用用于根据名称进行依赖注入。
@Resource(瑞色死):相当于@Autowired+@Qualitier,按名称进行注入。
@Value:注入普通属性。