为每个请求初始化静态变量

时间:2015-10-07 14:37:55

标签: java xml rest

这是一个场景,当我收到一个休息请求时,我必须做一些xml转换,为了构建一些xml元素,我触发了一个为我构建的java代码。例如,

<Parent>
   <element A>
   // This is created using java code, this is an array element
   <ComplexElement B>
       <element 1>
       <element 2>
   </ComplexElement B> 
</Parent>

因此java代码在请求中与我有数组的请求中被多次触发,因此我必须迭代它,这就是为什么每次迭代数组都会触发java代码的原因。

在java代码中我维护一个静态列表,所以当java代码被触发时,如果它是迭代中的第一次,它会将元素ID添加到列表中,这样如果元素重复,我可以在列表中查找并只创建一次而不是重复它。然而,我遇到的问题是静态列表不是垃圾收集,而是被转移到下一个请求。因此,即使下一个请求是新请求,如果先前的请求已经在列表中添加了元素id,也有可能跳过元素创建。

是否有更好的方法来处理此问题或更简单的方法来维护仅针对该请求的列表。任何帮助将不胜感激。感谢。

0 个答案:

没有答案