jsp:forward登录验证的学习与总结
一、学习内容 本次作业完成了基于 JSP 的用户登录功能开发核心掌握了以下知识点 1. JSP 表单提交与参数获取通过 request.getParameter 读取前端输入值 2. 页面跳转实现区分请求转发jsp:forward与重定向的使用场景 3. 逻辑验证设计实现账号密码正确/错误的不同页面跳转逻辑。二、环境准备搭建 Java Web 环境使用 Tomcat 9/10 作为服务器项目结构WebProject → WebContent → 新建 login.jsp、checklogin.jsp、main.jsp。三、代码login.jsp% page languagejava contentTypetext/html; charsetUTF-8 pageEncodingUTF-8% !DOCTYPE html html head meta charsetUTF-8 title用户登录界面/title /head style .error{ color:red; font-size:20px; } /style body % String errorMsg(String)request.getAttribute(errorMsg); if (errorMsg !null){ % p classerror%errorMsg %/p % } % h1用户登录/h1 form actionchecklogin.jsp methodpost p用户名input typetext nameusername/p p密码input typepassword namepassword/p pinput typesubmit value登录/p /form /body /htmlchecklogin.jsp% page languagejava contentTypetext/html; charsetUTF-8 pageEncodingUTF-8% !DOCTYPE html html head meta charsetUTF-8 titleInsert title here/title /head body % request.setCharacterEncoding(UTF-8); //获取表单数据 String usernamerequest.getParameter(username); String passwordrequest.getParameter(password); String correctUseradmin; String correctPwd123456; if(admin.equals(username)123456.equals(password)){ % jsp:forward pagemain.jsp/jsp:forward % }else{ request.setAttribute(errorMsg,用户名或密码错误); % jsp:forward pagelogin.jsp/jsp:forward % } % /body /htmlmain.jsp% page languagejava contentTypetext/html; charsetUTf-8 pageEncodingUTf-8% !DOCTYPE html html head meta charsetUTf-8 titleInsert title here/title /head body h1欢迎登录/h1 p当前用户%request.getParameter(username) %/p p退出登录/p /body /html2、运行结果四、学习与与总结1、JSP 表单提交使用 methodpost 提交表单通过 request.getParameter() 获取前端输入的参数区别于 GET 方式POST 方式更安全且能传输更多数据。2、jsp:forward 标签的使用该标签实现请求转发跳转过程中地址栏不发生变化且共享同一个 request 对象适合页面间的数据传递。本次作业中登录成功后通过该标签跳转至 welcome.jsp。3、请求转发与错误处理登录失败时通过 request.setAttribute() 存储错误信息再使用 request.getRequestDispatcher(login.jsp).forward(request, response) 转发回登录页实现错误提示的展示。4/中文乱码解决通过设置页面的 contentTypetext/html;charsetUTF-8 以及请求的 request.setCharacterEncoding(UTF-8)彻底解决了 JSP 页面中文显示乱码的问题。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2481350.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!