zoukankan      html  css  js  c++  java
  • Spring小知识

    Spring课程

    1.在bean的xml配置文件中,如果希望一个class指向一个内部类,可以使用$符号;

    例如:com.qunar.campus.UserServiceImpl$FindService,表示UserServiceImpl的内部类FindService;

    2.<scope>标签的含义,常用的有

    singleton:  表示该类的实例化,在同一个Spring Ioc容器中只有一个,其它地方再次实例化该类,获得到的是同一个对象.类似于单例模式

    prototype:  表示该类的实例化在一个Spring Ioc容器中可以是多个.其它地方每次实例化该类,得到的都不是同一个类;

    注意:

    当A(单例)依赖B(非单例), B依赖C(非单例)时,在整个实例化的链条中会使得A,B,C都成为单例存在一份.当然这里说的存在一份只是说A只有一份,A中的B和C只存在一份.当单单只实例化一个B或C时,B,C可以是多个的.

    非单例在实际的使用场景下比较少。我们往往使用单例模式。这就要求Bean对象严格的线程安全。

    3.@Resource标签的匹配顺序:优先匹配名字(name/id),其次匹配类型。

    4.Sping中的callback有init和destroy等.init是在一个类被实例化以后,调用的方法.destroy是在一个对象被销毁以前所调用的方法.

    定义init和destroy  callback方法有三种方式:

    (1)定义该类时实现InitializingBean和DisposableBean接口.分别重写afterPropertiesSet()和destroy()方法;

    (2)定义该类时,利用注解@ PostConstruct 和 @ PreDestroy标记相应的方法;

    (3)在bean的xml配置中利用init-method和destroy-method指定相应的方法名;

    注意:

    当这三种方式全部实现时,它们的调用顺序为(2)(1)(3)

  • 相关阅读:
    xml转义字符在mybatis动态sql中的使用
    jdbc类型与java类型
    aop日志(记录方法调用日志)
    mysql数据库关联查询【lert join】常见使用
    maven项目基本配置
    mapper文件的参数传入与获取
    idea新建项目出现push rejected如何解决
    快速从2个List集合中找出相同/不同元素
    Windows 环境下安装RocketMQ
    RabbitMQ java客户端集成 Spring 开发环境
  • 原文地址:https://www.cnblogs.com/userrain/p/5321503.html
Copyright © 2011-2022 走看看