JavaEE中通过request对象获取客户端的信息

一:通过request对象获取客户端的信息

request.setCharacterEncoding("UTF-8");//不乱码
//通过request对象获取客户端的信息
String pass=request.getParameter("password");
String mail=request.getParameter("mail");

二:界面跳转:

 //跳转"主面面main.jsp"
        request.getRequestDispatcher("main.jsp").forward(request,response);//地址栏不变

三:判断邮箱格式时要用正则表达式

常用正则表达式:

参考原文链接:https://blog.csdn.net/qq_37870901/article/details/81079554

正则表达式学习:

https://www.runoob.com/regexp/regexp-tutorial.html

四:今日项目:

将注册页面register.jsp提交的信息显示在main.jsp,要求密码6位,邮箱要有@,电话11位。

在这里插入图片描述

***学有余力的同学,在注册页面中多添加一行:
在这里插入图片描述

提示:String[] getParameterValues(String name) 获得如checkbox类(名字相同,但值有多个)的数据。


源代码:

Register.jsp:

<%--
  Created by IntelliJ IDEA.
  User: ls010
  Date: 2021/3/4
  Time: 12:12
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>+
<html>

<head>
    <title>Title</title>
    <style type="text/css">
        .style1 {
            font-family: "华文行楷";
            font-size: 36px;
            color: #CC6;
            text-align:center;
        }
        p{
            text-align:center;
        }
    </style>
</head>

<body>
<form action="doRegister.jsp" method="post" name="form1" id="form1">
    <p class="style1">注册页面</p>
    <p>用户名:
        <label>
            <input type="text" name="username" />
        </label>
    </p>
    <p>&nbsp;&nbsp;:
        <label>
            <input type="password" name="password" />
        </label>
    </p>
    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;
        <label>
            <input name="sex" type="radio" value="男" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <input name="sex" type="radio" value="女" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        </label>
    </p>
    <p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:
        <label>
            <input type="text" name="mail" />
        </label>
    </p>
    <p>&nbsp;&nbsp;&nbsp;:
        <label>
            <input type="text" name="tel" />
        </label>
    </p>
    <p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;好:
        <label>
            <input type="checkbox" name="hobby" value="跑步"  />
            跑步</label>
        <label>
            <input type="checkbox" name="hobby" value="上网" />
            上网</label>
        <label>
            <input type="checkbox" name="hobby" value="阅读" />
            阅读</label>
    </p>
    <p>
        <label>
            <input type="submit" name="Submit" value="提交" />
        </label>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        <label>
            <input type="reset" name="reset" value="重置" />
        </label>
    </p>

</form>


</body>
</html>

doRegister.jsp:

<%--
  Created by IntelliJ IDEA.
  User: ls010
  Date: 2021/3/4
  Time: 12:30
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<%-- 这是一个处理注册信息的页面 --%>
<h1 align="center">Errors!!!</h1>
<%
    request.setCharacterEncoding("UTF-8");
    //通过request对象获取客户端的信息
    String pass=request.getParameter("password");
    String mail=request.getParameter("mail");
    String tel=request.getParameter("tel");

    //out.print("name:"+name+",pass:"+pass);
    if(tel.length()==11&&pass.length()==6&&mail.matches("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*")){
        //跳转"主面面main.jsp"
        request.getRequestDispatcher("main.jsp").forward(request,response);//地址栏不变
    }
    else{
        out.println("要求密码6位,邮箱要有@,电话11位。\t");
    }
%>

</body>
</html>


Main.jsp:

<%--
  Created by IntelliJ IDEA.
  User: ls010
  Date: 2021/3/4
  Time: 13:07
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Tiltel</title>
</head>
<body>
<h1 align="center">信息显示</h1>
<%
    String name=request.getParameter("username");
    String pass=request.getParameter("password");
    String mail=request.getParameter("mail");
    String tel=request.getParameter("tel");
    String sex=request.getParameter("sex");
    String[] hobby= request.getParameterValues("hobby");
    out.println("用户名:"+name+"<br>"+ "密码:"+pass+"<br>"+ "邮箱:"+mail+"<br>"+ "电话号码:"+tel+"<br>"+ "性别:"+sex+"<br>"+"爱好:");
    for(int i=0;i<hobby.length;i++)
        out.println(hobby[i]);
%>

</body>
</html>

今日总结:

  • 学习了如何使用request对象进行获取客户端信息和跳转界面
  • 学习了如何用正则表达式解决判断邮箱格式问题
  • 学习了如何获取复选框中的多个值(request.getParameterValues)
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值