[英]How to call a java method (other than servlet) to jsp?
我有一个注册用户页面,可以选择输入用户名和密码。 在单击注册按钮时,我需要验证用户是否已经在数据库中。
如果用户存在,我需要显示一个隐藏标签并停留在屏幕上,否则导航到下一页。
JSP代码
<%@ page import="pkg.Login.*"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<html>
<Script type = "text/javascript">
function ManFieldValidation()
{
String tempVal = document.forms["form1"]["txtUserID"].value;
UserExistingCheck strObj = new UserExistingCheck();
boolean iReturn = strObj.CheckIDExist(tempVal);
return iReturn
}
</Script>
<body>
<form name = "form1" onSubmit = "return ManFieldValidation()" action = "ServRegister" method="post">
<label id = "lblUserError" style="visibility:hidden;"><font color = "red">The User ID is already available</font></label><br></br>
<label>User ID</label>
<input type = "text"name = "txtUserID" size="8" maxlength="10"></input>
<label>Password</label>
<input type = "password" name = "txtPassword" size="8" maxlength="10"></input>
<input type = "submit" class = "tfbutton" name = "Register" value = "Register"></input>
</form>
</body>
</html>
JSP-“ Register.jsp”
Servlet-“ ServRegister.java”(如果用户不存在,则将数据插入数据库)
因为我已经有一个servlet了; 我尝试编写一个Java方法来验证现有用户并返回true或false。 以下是Java代码。
Java方法
package pkg.Login;
import java.sql.*;
public class UserExistingCheck
{
public void CheckIDExist(String tempVal)
{
try
{
String url = "jdbc:sqlserver://localhost:1433;"+
"databaseName=WebPortal;user=VRHAJAS;Password=Vignesh007";
Connection conn = null;
Statement select = null;
ResultSet result = null;
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn=DriverManager.getConnection(url);
select = conn.createStatement();
String sQuery = "Select * from dbo.UserDetails where UserID = '" + tempVal + "'";
result=select.executeQuery(sQuery);
conn.close();
if(result.next())
{
return false;
}
else
{
return true;
}
}
catch (Exception e)
{
e.printStackTrace();
return false;
}
}
}
当我单击注册按钮时,不会调用上述方法。 而是执行“ ServRegister.java”。 也不会显示任何错误。 我正在使用日食。 谁能提出解决方案?
我认为您正在寻找REST架构。 注释将构建要调用的方法的路径,您只需在客户端执行AJAX。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.