我正在尝试使用jsp和postgress创建登录页面。登录不起作用.index.jsp页面总是说抱歉,电子邮件或密码错误。
索引页面是欢迎页面。它指向loginprocess.jsp.并调用了一个bean LoginDao.java。
的index.jsp
<form action="loginprocess.jsp">
Email:<input type="text" name="email"/><br/><br/>
Password:<input type="password" name="pass"/><br/><br/>
<input type="submit" value="login"/>
</form>
loginprocess.jsp
<%@page import="bean.LoginDao"%>
<jsp:useBean id="obj" class="bean.LoginBean"/>
<jsp:setProperty property="*" name="obj"/>
<%
boolean status=LoginDao.validate(obj);
if(status){
out.println("You r successfully logged in");
session.setAttribute("session","TRUE");
}
else
{
out.print("Sorry, email or password error");
%>
<jsp:include page="index.jsp"></jsp:include>
<%
}
%>
LoginDao.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class LoginDao {
//public static void main(String args[]){
public static boolean validate( LoginBean bean ){
Connection c = null;
Statement stmt = null;
boolean status=false;
try{
Class.forName("org.postgresql.Driver");
c = DriverManager.getConnection("jdbc:postgresql://localhost:5432/test","postgres", "pgadmin");
// c.setAutoCommit(false);
//PreparedStatement ps=c.prepareStatement("select * from user432 where email=? and pass=?;");
//ps.setString(1,bean.getEmail());
//ps.setString(2, bean.getPass());
stmt = c.createStatement();
ResultSet rs = stmt.executeQuery( "SELECT * FROM public.\"USER432\" where email= 'a' and pass='a' ;" );
//ResultSet rs = stmt.executeQuery( "SELECT * FROM public.company;" );
status=rs.next();
rs.close();
stmt.close();
c.close();
}catch(Exception e){}
//System.out.println(status);
return true;
}
}
LoginBean.java
package bean;
public class LoginBean {
private String email,pass;
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
}
答案 0 :(得分:0)
尝试按照以下步骤操作:
( LoginBean bean )
。validate
中添加参数(email,pass)而不是对象LoginBean。在你的jsp传递参数中如下:
< jsp:useBean id="obj" class="LoginBean" scope="session" />
<body>
< jsp:getProperty name="obj" property="email" />
< jsp:getProperty name="obj" property="pass" />
</body>