码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 2022.11.09第6次Javaweb上机——实现登录欢迎页面


    前情回顾

    Myeclipse的安装教程_科大云炬的博客-CSDN博客

    【JavaWeb第1次上机练习】安装Tomcat并在本地浏览器成功运行第一个Hello world网站_科大云炬的博客-CSDN博客

    【第2次JavaWeb上机练习】_科大云炬的博客-CSDN博客 

    第3次 JavaWeb上机练习:Servlet基础作业_科大云炬的博客-CSDN博客

    第4次JavaWeb上机练习——ServletConfig接口的常用方法_科大云炬的博客-CSDN博客

    Javaweb第5次上机练习(获取HTTP的请求参数)_科大云炬的博客-CSDN博客

    上机实操

    1在src目录新建名为ServletCkde的servlet

    功能:从前端form表单接收post请求中的参数,并传递给后端的jsp脚本提示欢迎信息

    1. package com.zr;
    2. import java.io.IOException;
    3. import java.io.PrintWriter;
    4. import javax.servlet.ServletException;
    5. import javax.servlet.http.HttpServlet;
    6. import javax.servlet.http.HttpServletRequest;
    7. import javax.servlet.http.HttpServletResponse;
    8. public class ServletCkde extends HttpServlet {
    9. public ServletCkde() {
    10. super();
    11. }
    12. public void doPost(HttpServletRequest request, HttpServletResponse response)
    13. throws ServletException, IOException {
    14. //指定浏览器汉字的编码格式
    15. response.setContentType("text/html;charset=utf-8");
    16. //指定服务器的汉字编码格式
    17. request.setCharacterEncoding("utf-8");
    18. //1.获取表单中提交的名字
    19. String usernameString =request.getParameter("username");
    20. String passwordString =request.getParameter("password");
    21. //2.跳转到注册成功页面,并且把请求响应参数传递过去
    22. //3.通过request域把获取到的表单数据写入request域中,并通过getRequestDispatcher,
    23. //指定传递页面,通过forward传递参数出去
    24. request.setAttribute("name",usernameString);
    25. request.setAttribute("pwd",passwordString);
    26. request.getRequestDispatcher("/loginok.jsp").forward(request,response);
    27. }
    28. public void destroy() {
    29. super.destroy(); // Just puts "destroy" string in log
    30. // Put your code here
    31. }
    32. public void doGet(HttpServletRequest request, HttpServletResponse response)
    33. throws ServletException, IOException {
    34. }
    35. /**
    36. * Initialization of the servlet.
    37. *
    38. * @throws ServletException if an error occurs
    39. */
    40. public void init() throws ServletException {
    41. // Put your code here
    42. }
    43. }

    2在WebRoot目录新建login.html

    功能:前端交互页面,接收用户输入的用户名、密码信息

    注:在from的action中填写ServletCkde的请求地址(包含项目名+路由地址)

    1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    2. <html>
    3. <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head>
    4. <body>
    5. <form action="/1109/servlet/ServletCkde" method="post">
    6. 姓名:<input type="text"name="username"><br>
    7. 密码:<input type="text"name="password"><br>
    8. <input type="submit"name="提交">
    9. </form>
    10. </body>
    11. </html>

    运行一下页面效果

     

     3在WebRoot目录新建loginok.jsp

    功能:从servlet的接收用户名和密码并提示欢迎信息,并在五秒后跳转到index.jsp首页

     

    1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    2. <%
    3. String path = request.getContextPath();
    4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    5. %>
    6. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    7. <html>
    8. <body>
    9. <%
    10. String strname=(String)request.getAttribute("name");
    11. String strpwd=(String)request.getAttribute("pwd");
    12. %>
    13. <p style="color:red">
    14. <%
    15. response.setHeader("refresh","2;ur1=/Webbk/index.jsp");
    16. %>
    17. 欢迎你:<%=strname%>你已成功登录,请牢记您的密码<%=strpwd%>三秒后跳转到首页</p>
    18. 秒后跳转到首页,如没有跳转你可以点击<ahref="index.jsp">首页〈/a>跳转到首页
    19. </body>
    20. </html>

     

    4在WebRoot目录新建index.jsp

    1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    2. <%
    3. String path = request.getContextPath();
    4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    5. %>
    6. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    7. <html>
    8. <head>
    9. <base href="<%=basePath%>">
    10. <title>My JSP 'index.jsp' starting page</title>
    11. <meta http-equiv="pragma" content="no-cache">
    12. <meta http-equiv="cache-control" content="no-cache">
    13. <meta http-equiv="expires" content="0">
    14. <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    15. <meta http-equiv="description" content="This is my page">
    16. <!--
    17. <link rel="stylesheet" type="text/css" href="styles.css">
    18. -->
    19. </head>
    20. <body>
    21. 这是首页 <br>
    22. </body>
    23. </html>

    运行结果

     

     

    项目源码

    https://t.zsxq.com/08FzQOAah

     

  • 相关阅读:
    云原生 | Docker - [常用镜像]
    从新东方讲师到AI框架工程师,我的历次职业转折|OneFlow U
    MQ常见的问题(kafka保证消息不丢失)
    正则表达式验证和跨域postmessage
    ROS2/DDS/QoS/主题的记录
    Java lambda表达式基本使用
    JAVA:实现字符串WordLadder字梯算法(附完整源码)
    使用Spring框架创建一个RESTful API,实现学生信息的管理,包括资源的创建、读取、更新和删除。
    Linux中设置开机启动执行命令和普通用户配置环境变量开机启动生效
    Fiddle设置接口数据用指定工具查看;Sublime Text设置json数据格式化转换
  • 原文地址:https://blog.csdn.net/qq_39154376/article/details/127939138
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号