是否可以在一个RPC请求期间在servlet中创建对象,然后访问同一个对象以进行下一次调用。在这里,我在一个RPC请求(createInstanceParams)中创建一个对象“模型”然后我返回到客户端,到其他一些东西并进行另一个调用。我的对象“模型”是否会从之前的调用中保存,或者我是否必须重新创建它。每次调用我都会在“模型”对象中进行一些更改,因此了解它是否可行非常重要。而且,如果可能的话,一个例子就是优秀的。谢谢。这是我的代码:
public class UpdateModelServiceImpl extends RemoteServiceServlet implements UpdateModelService {
public Model model;
@Override
public void createInstanceParam(double[] param, ClientModel m) {
model = new Model(m);
model.createInstanceParams(param);
}
@Override
public boolean inputFile(String name) {
return model.inputFile(name);
}
@Override
public ClientModel updateClientModel(ClientModel m) {
/**
model = new Model(m);
if(...){
model.inputFile(m.getFileName());
}
else if (...){
model.createInstanceParams(m.getParamList());
}
*/
return model.updateClientModel(m);
}
}
答案 0 :(得分:1)
是的,您可以将对象存储在用户会话中:
getThreadLocalRequest().getSession().setAttribute("id", obj);
然后在下一个rpc调用中访问它:
getThreadLocalRequest().getSession().getAttribute("id");