ツールクラスでの静的メソッドSpringのコンポーネントの使用

1733 ワード

/**
 * @author Dongguabai
 * @date 2018/9/27 10:14
 */
@Component
public class VwOrgSupport {

    /**
     *        orgType
     */
    private static final String LOWEST_ORGTYPE_05 = "05";
    private static final String LOWEST_ORGTYPE_06 = "06";

    /**
     * N-        x      
     * @see VwOrgQuery
     * @param orgId           orgNo
     * @return       x  
     */
    public static List getVwOrgQueryByPOrgNoAndLowOrgType(String orgId){
        String orgType = vwOrgSupport.vwOrgMapper.getOrgTypeByOrgNo(orgId);
        if (LOWEST_ORGTYPE_05.equals(orgType)){
            orgId = orgId.substring(0,orgId.length()-2);
            return vwOrgSupport.vwOrgMapper.getVwOrgQueryByPOrgNoAndLowOrgType(orgType,orgId);
        }
        if (LOWEST_ORGTYPE_06.equals(orgType)){
            orgType = LOWEST_ORGTYPE_05;
            orgId = orgId.substring(0,orgId.length()-4);
            return vwOrgSupport.vwOrgMapper.getVwOrgQueryByPOrgNoAndLowOrgType(orgType,orgId);
        }
        orgType = "0"+(Integer.valueOf(orgType)+1);
        return vwOrgSupport.vwOrgMapper.getVwOrgQueryByPOrgNoAndLowOrgType(orgType,orgId);
    }

    @Autowired
    private VwOrgMapper vwOrgMapper;

    private VwOrgSupport(){}

    private static VwOrgSupport vwOrgSupport;

    @PostConstruct
    public void init() {
        vwOrgSupport = this;
        vwOrgSupport.vwOrgMapper = this.vwOrgMapper;
    }
}

主に@PostConstruct注記を使用しています.この注記はサーブレットコンテナの初期化時に実行されます.具体的な実行タイミングは、関数を構築した後、init()メソッドの前に実行されます.もう1つの@PreDestroy注記は、destroy()メソッドの実行後にこの注記によって修飾されたメソッドによって実行される.
Springツールクラスを使用する方法もあります(参照:https://blog.csdn.net/Dongguabai/article/details/80788646).