我用的JSP+DAO写的留言管理系统,现在在eclipse中这段代码可以通过
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
PersonVO person = new PersonVO() ;
person.setId("hdb") ;
person.setPassword("zzzzz") ;
System.out.println( DAOFactory.getPersonDAOInstance().login(person) );
System.out.println(person.getName()) ;
}
/*
输出:true hdblocal
*/
但是放到JSP页面中,能打印出person.getId(),person.getPassword();
但是DAOFactory.getPersonDAOInstance().login(person)这一句后台怎么也打印不了,用if进行判断,if和else条件都进不去...
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="org.lxh.factory.*"%>
<%@ page import="org.lxh.PersonDAO.PersonDAOImply.*"%><html>
<head>
<title>留言管理程序</title>
</head>
<body>
<center>
<h1>留言管理范例--JSP+DAO实现</h1>
<hr>
<br><br>
<jsp:useBean id="person" scope="page" class="org.lxh.person.PersonVO" />
<jsp:setProperty name="person" property="*" />
<%
try{
//person.setId("hdb") ;
//person.setPassword("zzzzz") ;
//验证
System.out.println("44444444444") ;
if(DAOFactory.getPersonDAOInstance().login(person) ){
//合法,设置用户名到session范围之中
System.out.println("222222") ;
session.setAttribute( "uname",person.getName() ) ;
%>
<jsp:forward page="login_success.jsp" />
<%
}else{
%>
<jsp:forward page="login.jsp" />
<%
}
}catch(Exception e){
System.out.println("33333333");
}
%>
</center>
</body>
</html>jspjava
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
PersonVO person = new PersonVO() ;
person.setId("hdb") ;
person.setPassword("zzzzz") ;
System.out.println( DAOFactory.getPersonDAOInstance().login(person) );
System.out.println(person.getName()) ;
}
/*
输出:true hdblocal
*/
但是放到JSP页面中,能打印出person.getId(),person.getPassword();
但是DAOFactory.getPersonDAOInstance().login(person)这一句后台怎么也打印不了,用if进行判断,if和else条件都进不去...
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="org.lxh.factory.*"%>
<%@ page import="org.lxh.PersonDAO.PersonDAOImply.*"%><html>
<head>
<title>留言管理程序</title>
</head>
<body>
<center>
<h1>留言管理范例--JSP+DAO实现</h1>
<hr>
<br><br>
<jsp:useBean id="person" scope="page" class="org.lxh.person.PersonVO" />
<jsp:setProperty name="person" property="*" />
<%
try{
//person.setId("hdb") ;
//person.setPassword("zzzzz") ;
//验证
System.out.println("44444444444") ;
if(DAOFactory.getPersonDAOInstance().login(person) ){
//合法,设置用户名到session范围之中
System.out.println("222222") ;
session.setAttribute( "uname",person.getName() ) ;
%>
<jsp:forward page="login_success.jsp" />
<%
}else{
%>
<jsp:forward page="login.jsp" />
<%
}
}catch(Exception e){
System.out.println("33333333");
}
%>
</center>
</body>
</html>jspjava
* ·判断是否是正确的用户名和密码
* ·从数据库中取出真实的用户姓名
*/
public boolean login(PersonVO person) throws Exception {
boolean flag = false ;
String sql = "select name from person where id=? and password=? " ;
PreparedStatement pstmt = null ;
DataBaseConnection dbc = null ;
dbc = new DataBaseConnection() ;
try{
pstmt = dbc.getConnection().prepareStatement(sql) ;
pstmt.setString(1,person.getId()) ;
pstmt.setString(2,person.getPassword()) ;
ResultSet rs = pstmt.executeQuery() ;
if( rs.next() ){
System.out.println("rs.next(()之后") ;
flag = true ;
person.setName( rs.getString(1) ) ;
}
rs.close() ;
pstmt.close() ;
}catch(Exception e){
System.out.println(e.getMessage());
throw new Exception("PersonDAOImpl操作出现错误") ;
}finally{
dbc.close() ;
}
return flag ;
}
* ·判断是否是正确的用户名和密码
* ·从数据库中取出真实的用户姓名
*/
public boolean login(PersonVO person) throws Exception {
boolean flag = false ;
String sql = "select name from person where id=? and password=? " ;
PreparedStatement pstmt = null ;
DataBaseConnection dbc = null ;
dbc = new DataBaseConnection() ;
try{
pstmt = dbc.getConnection().prepareStatement(sql) ;
pstmt.setString(1,person.getId()) ;
pstmt.setString(2,person.getPassword()) ;
ResultSet rs = pstmt.executeQuery() ;
if( rs.next() ){
System.out.println("rs.next(()之后") ;
flag = true ;
person.setName( rs.getString(1) ) ;
}
rs.close() ;
pstmt.close() ;
}catch(Exception e){
System.out.println(e.getMessage());
throw new Exception("PersonDAOImpl操作出现错误") ;
}finally{
dbc.close() ;
}
return flag ;
}
pstmt.setString(2,person.getPassword()) ;
ResultSet rs = pstmt.executeQuery() ;
debug你的person.getId()、person.getPassword()正确不