gpt4 book ai didi

java - Web 服务 setter 不工作

转载 作者:行者123 更新时间:2023-11-28 23:22:51 25 4
gpt4 key购买 nike

我在 Eclipse 中的 Tomcat 8.5 和 Axis2 上运行了这个 Web 服务类:

public int volumen = 0, led = 0;
public String ultimaFecha = "null";

public int Volumen() {
return volumen;
}

public String Fecha() {
return LocalDateTime.now().format(DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss"));
}

public String Ultima() {
return ultimaFecha;
}

public int LED() {
System.out.println("LED: " + this.led);
return led;
}

public void setLED(int led) {
System.out.println("Old LED: " + this.led);
this.led = led;
System.out.println("New LED: " + this.led);
ultimaFecha = Fecha();
}

当我尝试调用 setLED(int led) 方法时,它似乎工作正常,显示结果已正确更新,但是当我调用 getter LED(),它返回初始值 0。在 C# 上:

SensorServices.Sensor s = new SensorServices.Sensor();
s.setLED(30);
var result = s.LED();

result 的值为 0。在 Tomcat 中,打印的显示如上:

Old LED: 0
New LED: 30
LED: 0

这是怎么回事?为什么我无法更新变量的值?我该如何解决这个问题?

最佳答案

好吧,我设法做了一些糟糕的解决方案,但它对我有用。

似乎每次我从客户端调用任何方法时,都会在服务器中创建一个新实例,所以我将所有内容都设置为静态,并且工作起来很有魅力。我认为我只需要一个实例,所以静态变量就可以了。

关于java - Web 服务 setter 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40973418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com