我有一个接收数据的servlet,如果数据正常,它仍然存在。我可以强制Java方法在某个点返回吗?
到目前为止,我试过如下:
public class ListenerServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
if(!check1())
handleErroneousRequest(response, "Error 1");
if(!check2())
handleErroneousRequest(response, "Error 2");
persist();
}
private void handleErroneousRequest(HttpServletResponse response, String errorMessage) {
response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
response.setContentType("text/xml");
PrintWriter out = response.getWriter();
out.flush();
out.close();
log.error("Error : " + errorMessage);
}
}
正如你可以想像,这并没有如我所料工作。 是否有比其他系列更优雅的解决方案?我可以强制该方法返回,因为我试图做?
到目前为止,我在淘选做这样的事情:
boolean isOK = true;
if(!check1()) {
isOK = false;
error = "bla";
}
if(!check2()) {
isOK = false;
error = "bla";
}
if(isOK){
doStuff()
}
如果你打算低估我,至少要有礼貌来解释为什么... – Tim
什么能阻止你在需要时使用“return”? – Polygnome
这是一个非常好的主意。让我尝试。 – Tim