【问题标题】:Spring / Java call variable from one method as a VariableSpring / Java从一种方法调用变量作为变量
【发布时间】:2014-08-08 13:40:24
【问题描述】:

我有一个变量,我称之为“UtilityStartDate”,假设它在 1 类中,它从存储过程中提取值。

第一类

 @Override
    public void populateUtility(Date utilityStartDate, String utilityStatus) {
        if(this.Utility != null) {
            this.Utility.populate(utilityStartDate, utilityStatus);
        }
    }

我想在这里填充它,在不同的类(2 类)中,目前它正在使用一个常量。 “READ_DASHBOARD_START_DATE”,也用作“dateFrom”。 2级

        @Loggable(value = LogLevel.DEBUG)
    public List <MeterReadChart> populateMeterReadChart(String customerId) {

        Calendar cal = Calendar.getInstance();
        String dateTo = DateUtils.formatDate(cal.getTime());
        **cal.add(Calendar.YEAR, Constant.READ_DASHBOARD_START_DATE);
        String dateFrom = DateUtils.formatDate(cal.getTime());**

        return meterReadingDao.populateMeterReadingDetail(customerId, dateFrom, dateTo);

    }

我对 java/spring 很陌生,不知道如何从 Class 1 调用它到 Class 2 中的方法

【问题讨论】:

  • 尝试注释为@Component,然后您可以使用@Autowired 将一个注入另一个,如果我知道正确的话

标签: java sql spring jsp web


【解决方案1】:

您可以使用 Spring IOC 将 Class1 引用到 Class2 中。

Class Class1 
    {

     // Populated value to be stored
     private Date utilityStartDate;

    // method called by Class2 to get the populated value
     public Date getUtilityStartDate()
    {
        return utilityStartDate;
     }

   // Method to populated. (Your logic)
   @Override
   public void populateUtility(Date utilityStartDate, String utilityStatus) {
    if(this.Utility != null) {
        this.Utility.populate(utilityStartDate, utilityStatus);
       }
    }

  }

    Class Class2
    {
     private Class1 class1;

     public void setClass1(Class1 class1)
     {
        this.class1 = class1;
     }


    @Loggable(value = LogLevel.DEBUG)
    public List <MeterReadChart> populateMeterReadChart(String customerId) {

        Calendar cal = Calendar.getInstance();
        String dateTo = DateUtils.formatDate(cal.getTime());
        **cal.add(Calendar.YEAR, Constant.READ_DASHBOARD_START_DATE);**
        // getting Date from Class1
        String dateFrom = DateUtils.formatDate(class1.getUtilityDate());

            return meterReadingDao.populateMeterReadingDetail(customerId, dateFrom, dateTo);

        }
    }

【讨论】:

    猜你喜欢
    • 2014-12-18
    • 2020-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    相关资源
    最近更新 更多