我有一个无状态会话bean,它包含一个公共方法,几个私有方法和一些实例级变量.下面是一个伪代码示例.
private int instanceLevelVar public void methodA(int x) { this.instanceLevelVar = x; methodB(); } private void methodB() { System.out.println(instanceLevelVar); }
我看到的是methodB打印未传递到MethodA的值.最好我可以告诉它从同一个bean的其他实例打印值.会造成什么?
我应该指出代码的工作原理是99.9%的时间.但是,.01%是对我造成了一些严重的问题/疑虑.
我明白,如果我有不同的公共方法,那么我可能不会在调用之间返回相同的bean,这将导致这种行为.但是,在这种情况下,唯一的一个呼叫就是单一的公共方法.容器(Glassfish在这种情况下)是否仍然在私有方法调用之间交换bean?
(编辑)我将“类级别”重命名为“实例级别”,因为这引起了一些混乱.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。