• Spring


    • 在Java应用中,Spring框架是必须的,Spring的核心是IOC(控制反转)以及AOP(面向切面编程)
    • IOC
    1. 它是一个大容器。方便组装管理各类系统内外部资源。在Spring中,它会认为一切Java资源都是Java Bean,容器的目标就是管理这些Bean和它们之间的关系。
    2. SpringIOC管理对象和其依赖关系,采用的不是人为的主动创建,而是由SpringIOC自己通过描述创建的,也就是说Spring是依靠描述来完成对象的创建及其依赖关系。
    3. 描述(XML配置文件),我们不使用new的方式去创建对象,而是使用XML配置文件的方式让SpringIOC容器自己去找对象,例如:
    1 <bean id="user" class="com.aone.user"/>
    2 <bean id="person" class="com.aone.person">
    3     <property name="user" ref="user"/>
    4 </bean>
    View Code
    • 如果要切换其它引用那么只需要修改<bean id="user" class="com.aone.user"/>配置文件就可,不需要再去new 其它对象。这种方式将bean之间的依赖关系解耦了,使程序结构更加清晰。
    • AOP
    1. 对面向对象的补充,目前广泛用于日志数据库事务控制,减少了大量重复代码,使得程序更加清晰。
    2. 在默认情况下,只要Spring接受到了异常信息,它就会将数据库的事务回滚,从而保证数据的一致性。例如:
     1 private void updateUser(User user){
     2 
     3     /*************/
     4     //关于对象的其它操作
     5     /*************/
     6     //判断User是否存在
     7     boolean flag=userService.isNot(user);
     8     if(flag==false){
     9         //不存在抛出异常
    10         throw new RuntimeException("用户不存在");//对象的其它操纵也会回滚
    11     }    
    12 }
    View Code
    • 为什么使用Spring框架?
    1. 使用Spring框架可以达到模块解耦,控制对象之间的协作目的,所以Spring框架流行。
    • SpringIOC详解

      • 相关问题

      • IOC管理Bean流程

    创建对象(装配Bean)-------->初始化对象(初始化Bean)-------->对象赋值使用(依赖注入)

    装配Bean的方式:

    初始化Bean的方式:

    依赖注入方式:

      • IOC容器常用接口

      • Bean生命周期以及作用域(未完待续)

    spring事务,TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

    在aop配置事务控制或注解式控制事务中,try...catch...会使事务失效,可在catch中抛出运行时异常throw new RuntimeException(e)或者手动回滚TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();使得事务生效,异常回滚。

  • 相关阅读:
    我的日常笔记
    html元素是如何占据空间和定位的
    jdbc和数据库的应用
    java笔记之String的应用
    java笔记之静态修饰附和单例设计模式
    java笔记
    本人对于JavaScript的一些总结
    JavaScript 轮播图
    h5简单布局练习
    有一个八位数,个位数+十位数+百位数+千位数一直加到千万位数的和除以7能等于0.。。。
  • 原文地址:https://www.cnblogs.com/LJing21/p/10506274.html
Copyright © 2020-2023  润新知