package edu.jmi.servlet;
import java.io.IOException;
import java.sql.Connection;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import edu.jmi.dao.UserDao;
import edu.jmi.model.User;
/**
Servlet implementation class Update
*/
public class Update extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
/**
/**
}
public boolean isUserExist(User user){
boolean bres=false;
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
try{
//获取数据库链接
System.out.println("start to do");
conn=DB.getConnection();
String sql="select * from emp where empno=?";
ps=conn.prepareStatement(sql);
ps.setString(1, user.getEmpno());
rs=ps.executeQuery();
bres=rs.next();
}catch(Exception e){
System.out.print(e);
}finally{
DB.close(rs, ps, conn);
}
System.out.println(bres);
return bres;
}
MVC模式写查询
session.setAttribute("msg1",res.getString(1));
session.setAttribute("msg2",res.getString(2));
session.setAttribute("msg3",res.getString(3));
session.setAttribute("msg4",res.getString(4));
session.setAttribute("msg5",res.getString(5));
session.setAttribute("msg6",res.getString(6));
把获取的值传到value里,res.getString(1)出错
错误提示Cannot invoke getString(int) on the primitive type boolean
res+"",这样看的懂?
disabled=true,或者就直接放个disabled
建议你检查一下这个对象res是否是基本类型
说实话看 了你的代码,感觉是面条代码。
你要返回的应该是ResultSet rs这个对象
```public ResultSet isUserExist(User user){
return rs;
}
ResultSet rs = isUserExist(user);
如果确定返回的记录是一条,就直接rs.getString(1);//这样,如果不确定判空一下。if(rs!=null){...}
你的逻辑是不是有问题啊,要通过empno查询 emp的全部信息,返回的是boolean值,
但是前面却想获取这个emp的信息,所有你就getString(1,2,3....),
你返回的是boolean,结果就两个true和false,怎么能让你获取这么多信息呢?
想在前面直接能获取emp的信息,首先要确保返回的是emp这个类型的结果,即查询方法最下面要是 return (emp)xx;
所以查询方法名要改成
public emp isUserExist(User user){
。。。。
jdbc查询,然后查询结果各种set进xx
。。。。
return (emp) xx;
}
前面先判断xx 是否为空,不为空的情况下 获取 xx.get...(get后面是跟的emp的属性名);