题目需求
编写一个用于判断用户名是否有效的JavaBean,并应用该JavaBean判断用户名是否有效,具体要求如下。
本任务需要定义一个输入用户名的表单页面以及一个用户名验证反馈页面,还需要定义一个用户名的JavaBean,来对输入的用户名进行验证。
实现步骤
1.创建Username类
package cn.itcast;
public class Username {
String reg = "[a-zA-Z]";
String regx = "[a-zA-Z0-9]";
String username;
Boolean isval;
String tip;
public String getTip(){
return tip;
}
public void setTip(String tip){
this.tip = tip;
}
public String getUsername(){
return username;
}
public Boolean getIsval(){
return isValid();
}
public void setIsval(Boolean isval){
this.isval = isval;
}
public void setUsername(String username){
this.username = username;
}
public boolean isValid(){
String name = getUsername();
String firstname = String.valueOf(name.charAt(0));
// 首字符为字母
if(firstname.matches(reg)){
for(int i=1;i<name.length();i++){
if(!String.valueOf(name.charAt(i)).matches(regx)){
setTip("用户姓名错误,只能由字母、数字和下划线组成!");
return false;
}
}
setTip("用户格式正确!");
return true;
}else {
setTip("用户姓名错误,首字符必须为字母!");
return false;
}
}
}
2.创建login.jsp文件
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>用户输入用户名页面</title>
</head>
<body>
<form action="judge.jsp" method="post" style="font-size: 20px;">
<li>请输入用户名:<input type="text" name="username"/>只能由字母、数字或者下划线组成</li>
<li><input type="submit" name="submit" value="验证"/></li>
</form>
</body>
</html>
3.创建judge.jsp文件
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<jsp:useBean id="username" class="cn.itcast.Username" scope="page">
<jsp:setProperty name="username" property="*"/>
</jsp:useBean>
<html>
<head>
<title>Title</title>
</head>
<body>
<ul style="font-size: 20px;">
<li>输入的用户名为:<jsp:getProperty name="username" property="username"/></li>
<li> 是否有效:<jsp:getProperty name="username" property="isval"/></li>
<li> 提示信息:<jsp:getProperty name="username" property="tip"/></li>
</ul>
</body>
</html>