Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中注册表单验证_Java - Fatal编程技术网

在java中注册表单验证

在java中注册表单验证,java,Java,我有一个连接到sql数据库的注册页面。现在我想在注册页面中进行验证,如firstname、lastname、username等,使用java时不能为空,我该怎么做 我的代码是 String fname=Fname.getText(); String lname=Lname.getText(); String uname=Uname.getText(); String emailid=Emailid.getText(); String contact=Contact

我有一个连接到sql数据库的注册页面。现在我想在注册页面中进行验证,如firstname、lastname、username等,使用java时不能为空,我该怎么做 我的代码是

String fname=Fname.getText();
    String lname=Lname.getText();
    String uname=Uname.getText();
    String emailid=Emailid.getText();
    String contact=Contact.getText();
    String pass=String.valueOf(Pass.getPassword());
    Connection conn=null;
    PreparedStatement pstmt=null;
    try
    {
        Class.forName("com.mysql.jdbc.Driver");
        conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/zeeshan","root","sHaNi97426");
        pstmt=conn.prepareStatement("Insert into signup1 values(?,?,?,?,?,?)");
        pstmt.setString(1,fname);
        pstmt.setString(2,lname);
        pstmt.setString(3,uname);
        pstmt.setString(4,emailid);
        pstmt.setString(5,contact);
        pstmt.setString(6,pass);
        int i=pstmt.executeUpdate();
        if(i>0)
        {
            JOptionPane.showMessageDialog(null,"Successfully Registered");
        }
        else
        {
            JOptionPane.showMessageDialog(null,"Error");
        }
    }
    catch(Exception e)
    {
        JOptionPane.showMessageDialog(null,e);
    } 

要检查
字符串是否为空,可以使用方法
.isEmpty()
。您可能需要首先使用
.trim()
,因为这会删除字符串开头和结尾的所有空格。有关更多选项,请查看完整文档。

首先,您的问题不是直接的。验证发生在数据库查询之前。您不应进入数据库
连接
或进行任何查询

你应该做什么:

public static boolean nullOrEmpty(String value) {
        return value == null || value.trim().equals("") ? true : false;
    }
public void yourMethod(){
    try{
        //YourCode Here
        String fname=Fname.getText();

        if(nullOrEmpty(fname)){
            new throw ValidationException("First name should not be null.");
        }
        //YourCode Here
   }catch(ValidationException e){
     System.err.println("Exception:"+e.getMessage());
   }
}

检查每个要验证的字符串。

这应该不难,您可以使用下面的简单if和else进行验证

   if(fname != null && fname.isEmpty()){
                throw new Exception(fname+" cannot be empty");
            }else if(lname != null && lname.isEmpty()){
                throw new Exception(fname+" cannot be empty");
            }
   .....

建议您抽象验证和数据库访问对象。参见此处的示例

您只需下载名为
org.apache.commons.lang的
jar
即可

示例代码

    StringUtils.isBlank(null)      = true
    StringUtils.isBlank("")        = true  
    StringUtils.isBlank(" ")       = true  
    StringUtils.isBlank("bob")     = false  
    StringUtils.isBlank("  bob  ") = false


建议:在你的问题中使用适当的大小写和标点符号,使其更容易理解。否则人们会问“你的问题是什么?”等等。除此之外:你尝试了什么?检查字符串的
null
或为空应该不太难。您尝试过这个吗
.isEmpty()'never returns'null'如果我没记错的话你是否读过这个>试试这些工具我可以将这个jar文件添加到netbeans@Vikrant Kashyapyes你应该先将这个jar添加到
lib
文件夹,然后你应该试着使用这个类
StringUtils
  StringUtils.isEmpty(obj_String); // Another method to check either null or "";