您好,我正在尝试通过 JSP 获取登录信息。编译 LoginServlet.java
Can't find symbol : Login
这是我的代码,你能告诉我这个问题的解决方案吗?
Login.java
public class Login
{
public static boolean validate(String name, String pass)
{
boolean status = false;
Connection conn = null;
PreparedStatement pst = null;
ResultSet rs = null;
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String driver = "oracle.jdbc.driver.OracleDriver";
String userName = "system";
String password = "dad";
try
{
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url,userName, password);
pst = conn.prepareStatement("select * from login where user=? and password=?");
pst.setString(1, name);
pst.setString(2, pass);
rs = pst.executeQuery();
status = rs.next();
}
catch (Exception e)
{
System.out.println(e);
}
finally
{
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (pst != null) {
try {
pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return status;
}
}
LoginServlet.java
public class LoginServlet extends HttpServlet
{
private static final long serialVersionUID = 1L;
public void do Post(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String n=request.getParameter("username");
String p=request.getParameter("userpass");
HttpSession session = request.getSession(false);
if(session!=null)
session.setAttribute("name", n);
session.setAttribute("pass", p);
if(Login.validate(n,p))
{
Request Dispatcher rd=request.getRequestDispatcher("welcome.jsp");
rd.forward(request,response);
}
else
{
out.print("<p style=\"color:red\">Sorry username or password error</p>");
Request Dispatcher rd=request.getRequestDispatcher("index.jsp");
rd.include(request,response);
}
out.close();
}
}
最佳答案
您需要在 Servlet 中导入 Login
类。
这可能是由于您的 Login
类和 LoginServlet
都位于不同的包中。因此,在使用之前,您需要在 LoginServlet
中导入 Login
类。
您需要添加类似的内容,
import yourpackage.Login;
在 LoginServlet
的开头
关于Java错误找不到符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24651378/