catch(SQLException exp) { backNews="注册失败,用户名已存在!"; userBean.setBackNews(backNews); session.setAttribute("success", 0); }
时间: 2024-03-04 11:52:35 浏览: 5
这段代码是一个try-catch语句块,其中的catch语句用于捕获SQL异常(SQLException)。如果在try语句块中发生了SQL异常,程序会跳转到catch语句块中执行相应的操作。在这段代码中,backNews变量被赋值为"注册失败,用户名已存在!",然后将其设置到userBean对象中的backNews属性中。接着,将session中的success属性值设置为0,用于标记注册是否成功。最后,程序会继续执行catch语句块之后的代码。
相关问题
boolean isLD=true; boolean boo=username.length()>0&&password.length()>0&&isLD; //用户名和密码不能为空 String backNews=""; try { con=DriverManager.getConnection(url); String insertCondition="INSERT INTO user(username,password,phone) VALUES (?,?,?)"; sql=con.prepareStatement(insertCondition); if(boo) { sql.setString(1,username); sql.setString(2,password); sql.setString(3,phone); int m=sql.executeUpdate(); //判断数据是否存入数据库 if(m!=0) { backNews="注册成功"; //若存入则注册成功 userBean.setBackNews(backNews); userBean.setUsername(username); session.setAttribute("success", 1); } } else { //未存入则注册失败 backNews="信息填写不完整,或存在非法字符!"; userBean.setBackNews(backNews); session.setAttribute("success", 0); } con.close(); } catch(SQLException exp) { backNews="注册失败,用户名已存在!"; userBean.setBackNews(backNews); session.setAttribute("success", 0); }
这段代码是用来进行用户注册的。其中,isLD表示是否为联动注册,即是否需要填写手机号码;boo表示用户名和密码是否都不为空,且isLD为true;backNews为返回的提示信息;con表示数据库连接对象;insertCondition表示要执行的SQL语句;sql表示执行SQL语句的PreparedStatement对象;username、password和phone表示用户注册时填写的用户名、密码和手机号码。
代码首先通过DriverManager获取数据库连接对象con,然后使用prepareStatement方法创建一个PreparedStatement对象sql,接着判断用户名和密码是否都不为空且isLD为true,如果是,则将用户名、密码和手机号码插入到数据库中,并判断插入操作是否成功,如果成功,则返回注册成功的提示信息,否则返回信息填写不完整或存在非法字符的提示信息。如果用户名已存在,则返回用户名已存在的提示信息。最后,关闭数据库连接对象con。
boolean boo=username.length()>0&&password.length()>0; //用户名和密码不能为空 String backNews=""; try { con=DriverManager.getConnection(url); String insertCondition="INSERT INTO users(username,password,sex,phone) VALUES (?,?,?,?)"; sql=con.prepareStatement(insertCondition); if(boo) { sql.setString(1,username); sql.setString(2,password); sql.setString(3,sex); sql.setString(4,phone); int m=sql.executeUpdate(); //判断数据是否存入数据库 if(m!=0) { backNews="注册成功"; //若存入则注册成功 userBean.setBackNews(backNews); userBean.setUsername(username); session.setAttribute("success", 1); } } else { //未存入则注册失败 backNews="信息填写不完整,或存在非法字符!"; userBean.setBackNews(backNews); session.setAttribute("success", 0); } con.close(); } catch(SQLException exp) { //若try语句内有异常则表明用户名已存在 backNews="注册失败,用户名已存在!"; userBean.setBackNews(backNews); session.setAttribute("success", 0); }
这是一个更加完善的用户注册代码,与之前的不同之处在于,增加了对用户名和密码是否为空的判断,以及对未能成功将数据存入数据库的情况进行了处理。具体来说,如果用户名和密码为空或存在非法字符,则会返回一个"信息填写不完整,或存在非法字符"的提示信息,并将session属性"success"设置为0,表示注册失败;如果存储数据失败,则会返回一个"注册失败,用户名已存在"的提示信息,并将session属性"success"设置为0,表示注册失败。如果成功将数据存入数据库,则会返回一个"注册成功"的提示信息,并将用户信息保存在userBean中,并将session属性"success"设置为1,表示注册成功。需要注意的是,这段代码依然需要进一步完善,比如对用户输入的数据进行校验,以防止SQL注入等安全问题。