Maven或Tomcat重写我的Java类属性

Maven或Tomcat重写我的Java类属性,java,class,tomcat,Java,Class,Tomcat,所以我有一个带有一些属性的“Server”类,其中一个是“joinSession”,它是一个布尔值,默认为false 我有一个二传手和接球手,它工作得非常好。然而,我的问题是,当超过1个人连接到我的应用程序时(这有时会导致setter函数将“joinSession”变为true),他们会共享joinSession的值。。。因此,如果client2将其更改为true,那么应该仍然具有默认false值的client1实际上也将变为true 如果这不合理,您需要查看代码,请让我知道。谢谢 代码:(由于

所以我有一个带有一些属性的“Server”类,其中一个是“joinSession”,它是一个布尔值,默认为false

我有一个二传手和接球手,它工作得非常好。然而,我的问题是,当超过1个人连接到我的应用程序时(这有时会导致setter函数将“joinSession”变为true),他们会共享joinSession的值。。。因此,如果client2将其更改为true,那么应该仍然具有默认false值的client1实际上也将变为true

如果这不合理,您需要查看代码,请让我知道。谢谢

代码:(由于保密协议,许多非贡献代码已被删除)

还有我的服务器类

public class Server {
    private static String path;
    private static String JWToken;
    private static boolean joinSession;

    Server( String domain, String token ) {
        path = "http://" + domain + ":8000/" ;
        JWToken = token;
    }

    public void setJoinSession(boolean isJoinSession) {
        joinSession = isJoinSession;
    }

    public boolean getJoinSession() {
        return joinSession;
    }
}

我认为您的
joinSession
是一个静态字段,因此它属于您的服务器类,每个人都在更改它。您不应该这样做,因为静态字段属于类而不是对象。如果每个人都需要此字段,则不应将其设置为静态。这会解决你的问题

我们需要代码,问题是什么?@M.OğuzÖzcan试图在其他用户更改“joinSession”时阻止覆盖它的值。。。我将在一分钟内用code@M.OğuzÖzcan例如:Client1连接并获取“joinSession=false”的默认值。。。。如果没有其他人连接,它将保持这样。。。现在让我们假设Client2连接,并调用将其“joinSession”更改为true的操作。。。现在由于某种原因,Client1也有joinSession=false,如何阻止它?你能分享代码吗?我认为您的
joinSession
是一个静态字段,因此它属于您的服务器类,每个人都在更改它。所以你需要避免这种情况,但我需要看看代码please@MadoBaker除非你回答了你的问题并包含了代码,否则你的文章就脱离主题了。没有人能在没有看到代码的情况下帮助你。听起来您需要实现客户机“会话”的概念。Servlet规范已经有了一种机制来实现这一点。Maven是一个构建工具,与您的问题无关。
public class Server {
    private static String path;
    private static String JWToken;
    private static boolean joinSession;

    Server( String domain, String token ) {
        path = "http://" + domain + ":8000/" ;
        JWToken = token;
    }

    public void setJoinSession(boolean isJoinSession) {
        joinSession = isJoinSession;
    }

    public boolean getJoinSession() {
        return joinSession;
    }
}