zoukankan      html  css  js  c++  java
  • 【坑】Spring中抽象父类属性注入,子类调用父类方法使用父类注入属性

    运行环境

    idea 2017.1.1
    spring 3.2.9.RELEASE

    需求背景

    需要实现一个功能,该功能有2个场景A、B,大同小异
    抽象一个抽象基类Base,实现了基本相同的方法BaseMethod,其中使用到Bean类中的方法
    A、B分别继承Base,重写BaseMethod方法,在调用super.BaseMethod()的基础上补充自己的差异代码

    错误实现与描述

    1、在Base基类中注入Bean,使用@Resource注解,在子类A、B中调用super.BaseMethod()时,其中的Bean报空指针
    ——不能使用注解注入抽象类的属性?
    2、在bean.xml中配置化注入Bean,配置bean时标明abstract="true",但部署报错
    ——没有在类中实现setter方法。。
    3、实现了setter方法,部署成功,但是运行时Bean仍然报空指针
    ——

    解决方法

    1、在beans.xml中配置注入,配置bean时标明abstract="true"

            <bean id="baseBean"  class="com.shane.Base"  abstract="true">
    		<property name="bean" ref="bean"></property>
    	</bean>
    

    2、在Base中实现Bean的setter
    3、在子类中也要实现setter。。

    网上找到的一个解决方法。。不知道有没有更好的。。总感觉这样写很坑。。

  • 相关阅读:
    Discuz经典函数注释之authcode
    在delphi中,DLL加载时做初始化的Demo
    KERNEL32相关函数
    解析 png 图片的十六进制字符流
    delphi 获取硬盘序列号、cpu号、bios号、网卡号
    封装 INI 文件读写函数
    A窗口消失B窗口弹出
    delphi公用函数
    获取打开文件的PID
    C# cmd调用外部命令
  • 原文地址:https://www.cnblogs.com/shanelau/p/7069646.html
Copyright © 2011-2022 走看看