public void doFilter(ServletRequest servletrequest, ServletResponse servletresponse,???FilterChain filterchain) throws IOException, ServletException {??HttpServletRequest request=(HttpServletRequest)servletrequest;??//接受用戶請(qǐng)求的地址??String url = request.getServletPath();??//判斷用戶請(qǐng)求的地址,并執(zhí)行相應(yīng)程序??if(url.equals("/register.action")){???request.getRequestDispatcher("register.jsp").forward(servletrequest, servletresponse);???return ;??}??else if(url.equals("/saveUser.action")){???String name = request.getParameter("user");???String password = request.getParameter("password");???String password1 = request.getParameter("password1");???if(password.equals(password1)){????User us = new User();????us.setUsername(name);????us.setPassword(password);????//執(zhí)行DAO持久化操作????request.getRequestDispatcher("end.jsp").forward(servletrequest, servletresponse);????return ;???}???else{????request.getRequestDispatcher("register.jsp").forward(servletrequest, servletresponse);????return ;???}??}??//跳轉(zhuǎn)到相應(yīng)界面??filterchain.doFilter(servletrequest, servletresponse);?}
4 回答
已采納

大咪
TA貢獻(xiàn)785條經(jīng)驗(yàn) 獲得超332個(gè)贊
說白了就是終止你重定向和請(qǐng)求轉(zhuǎn)發(fā)的這兩個(gè)方法的關(guān)鍵字。。有了return相當(dāng)于執(zhí)行完跳轉(zhuǎn)url后停止繼續(xù)往下運(yùn)行,不加的話估計(jì)會(huì)有異常,不信你可以試試把return刪掉,看看會(huì)不會(huì)出現(xiàn)異常情況。。。

一瞬兒光
TA貢獻(xiàn)178條經(jīng)驗(yàn) 獲得超70個(gè)贊
return 主要有三個(gè),return true; return false; return;前兩個(gè)很明顯返回一個(gè)bool值,并停止下面代碼執(zhí)行,return無返回值,僅做停止作用。但是這里的停止不是指停止當(dāng)前腳步所有代碼,放在函數(shù)里,僅指退出當(dāng)前函數(shù)。

行恒
TA貢獻(xiàn)3條經(jīng)驗(yàn) 獲得超1個(gè)贊
如果找到符合的條件,執(zhí)行相應(yīng)的if語句,然后return終止當(dāng)前的if語句。
你的代碼是做登錄驗(yàn)證用的,如果用戶存在,直接登錄;如果用戶不存在,需要注冊(cè)保存一個(gè)用戶。
添加回答
舉報(bào)
0/150
提交
取消