zoukankan      html  css  js  c++  java
  • spring杂碎

    spring优点

    方便解耦,简化开发

    Spring就是一个大工厂,可以将所有对象创建和依赖关系维护,交给Spring管理

    AOP编程的支持

    Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能

    声明式事务的支持

    只需要通过配置就可以完成对事务的管理,而无需手动编程

    方便程序的测试

    SpringJunit4支持,可以通过注解方便的测试Spring程序

    方便集成各种优秀框架

    Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:StrutsHibernateMyBatisQuartz等)的直接支持

    降低JavaEE API的使用难度

    Spring JavaEE开发中非常难用的一些APIJDBCJavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低

     

    <bean>的作用范围:scope属性:
    Spring创建Bean的时候默认情况下使用单例模式创建:
    scope:
    * singleton :默认值.默认就会采用单例模式创建Bean.
    * prototype :Spring创建Bean的时候采用多例模式.
    * request :Web项目中使用.Spring创建Bean的时候,将Bean保存到request域中.
    * session :Web项目中使用.Spring创建Bean的时候,将Bean保存到session域中.
    * globalsession :Web项目中使用.一般用于Porlet应用环境.如果没有Porlet环境.配置了globalsession等同于session.

     

    Spring生成Bean的时候有一个完整的生命周期:(11个步骤:)

    1.instantiate bean对象实例化

    2.populate properties 封装属性

    3.如果Bean实现BeanNameAware 执行 setBeanName

    4.如果Bean实现BeanFactoryAware 或者 ApplicationContextAware 设置工厂 setBeanFactory 或者上下文对象 setApplicationContext

    5.如果存在类实现 BeanPostProcessor(后处理Bean) ,执行postProcessBeforeInitialization

    6.如果Bean实现InitializingBean 执行 afterPropertiesSet

    7.调用<bean init-method="init"> 指定初始化方法 init

    8.如果存在类实现 BeanPostProcessor(处理Bean) ,执行postProcessAfterInitialization

    9.执行业务处理

    10.如果Bean实现 DisposableBean 执行 destroy

    11.调用<bean destroy-method="customerDestroy"> 指定销毁方法 customerDestroy

    面朝大海```春暖花开
  • 相关阅读:
    sql server 2008数据复制方法
    排错技能:任务管理器中追踪某w3wp.exe是哪个IIS站点的application pool
    SplendidCRM中给来自EditView中的listbox控件设置选中值或数据源
    jQuery String Functions
    [转]jquery getJSON 数据联动(采用序列化和反序列化获取数据) .
    [转]javascript eval函数解析json数据时为什加上圆括号eval("("+data+")")
    深入理解C语言
    Qt回忆录之配置开发环境
    360电话面试
    浅谈C++设计模式之单例模式
  • 原文地址:https://www.cnblogs.com/chywx/p/6810060.html
Copyright © 2011-2022 走看看