в моем веб-проекте у меня есть один сервлет, который обрабатывает запросы и ответы на многих страницах jsp, но сервлет перенаправляет только страницу ошибок, даже если мои значения данных верны, например, если мои регистрационные значения содержат старые данные члена, к которым он переходит следующая страница, но также показывает страницу ошибки, включенную в нее
// registering user //
int check = AccDataAccess.checkUser(acc);
if(check>0)
{
RequestDispatcher rd = request.getRequestDispatcher("Verification.jsp");
rd.include(request, response);
}
else
{
int status = AccDataAccess.Register(acc);
if(status>0)
{
RequestDispatcher rd = request.getRequestDispatcher("Verification.jsp");
rd.include(request, response);
}
}
// log in user //
int checkLog = AccDataAccess.checkLogin(acc);
if(checkLog>0)
{
RequestDispatcher rd = request.getRequestDispatcher("Account Access.html");
rd.include(request, response);
}
else
{
RequestDispatcher rd = request.getRequestDispatcher("Error.jsp");
rd.include(request, response);
}
Database code :
// Registering new user//
public static int Register(AccHolder acc)
{
int status=0;
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection
("jdbc:mysql://localhost:3306/info","root","cpp");
PreparedStatement ps = con.prepareStatement("INSERT into register(name,lname,address,city,email,phone,gender,doj) VALUES(?,?,?,?,?,?,?,?)");
ps.setString(1,acc.getName());
ps.setString(2,acc.getLname());
ps.setString(3,acc.getAddress());
ps.setString(4,acc.getCity());
ps.setString(5,acc.getEmail());
ps.setString(6,acc.getPhone());
ps.setString(7,acc.getGender());
ps.setString(8,acc.getDate());
status = ps.executeUpdate();
con.close();
}
catch(Exception reg)
{
}
return status;
}
//Checking user's registration is complete or not//
public static int checkUser(AccHolder acc)
{
int check =0;
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection
("jdbc:mysql://localhost:3306/info","root","cpp");
PreparedStatement ps = con.prepareStatement("SELECT name,lname,address,city,email,phone,gender From register Where name= ? AND lname= ? AND address=? AND city=? AND email=? AND phone=? AND gender=?");
ps.setString(1,acc.getName());
ps.setString(2,acc.getLname());
ps.setString(3,acc.getAddress());
ps.setString(4,acc.getCity());
ps.setString(5,acc.getEmail());
ps.setString(6,acc.getPhone());
ps.setString(7,acc.getGender());
ResultSet rs = ps.executeQuery();
while(rs.next())
{
check=1;
}
con.close();
}
catch(Exception ch)
{
ch.printStackTrace();
}
return check;
}
// Validating user log in & password //
public static int checkLogin(AccHolder acc)
{
int checkLog =0;
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection
("jdbc:mysql://localhost:3306/info","root","cpp");
PreparedStatement ps = con.prepareStatement("SELECT user,password From log WHERE user=? AND password=?");
ps.setString(1,acc.getUser1());
ps.setString(2,acc.getPassword());
ResultSet rs = ps.executeQuery();
while(rs.next())
{
checkLog=1;
}
con.close();
}
catch(Exception chl)
{
chl.printStackTrace();
}
return checkLog;
}