try{ if (m_id==null) m_id =""; if (m_name==null) m_name =""; if (m_country == null) m_country = ""; if (!(m_id.trim().equals(""))) getSql = " and m_id ='"+e_id+"'"; if (!(m_name.trim().equals(""))) getSql = " and m_name ='"+e_name+"'"; if (!(m_country.trim().equals(""))) getSql = " and m_country='"+country+"'"; rs = this.executeQuery(getSql);
private String e_id;
这几个属性名称的下划线去掉,试试,估计是不符合bean的规范。
{
String sql="select * from employees";
ResultSet rs = this.executeQuery(sql);
...
上面为什么是 this.executeQuery(sql);
是应该
Statement stm=con.createStatement();
ResultSet rs=stm.executeQuery(sql);
<jsp:setProperty name="staff" property="*"/>(属性到底是什么,怎么没赋值)
</jsp:useBean>为什么后面还要Staff newStaff=new Staff();
<%
Staff newStaff=new Staff();
ResultSet rs=newStaff.getStaff();
while(rs.next()) {
String m_id=rs.getString("e_id");
String m_name=rs.getString("e_name");
String m_country=rs.getString("country");
System.out.println(m_name);
%>
m_id,m_name,m_country应该用newStaff的方法来取值。
还有就是BEAN问题了
public ResultSet getList(){
String getSql="select * from employees ";
try{
if (m_id==null) m_id ="";
if (m_name==null) m_name ="";
if (m_country == null) m_country = "";
if (!(m_id.trim().equals("")))
getSql = " and m_id ='"+e_id+"'";
if (!(m_name.trim().equals("")))
getSql = " and m_name ='"+e_name+"'";
if (!(m_country.trim().equals("")))
getSql = " and m_country='"+country+"'";
rs = this.executeQuery(getSql);
}catch(Exception e) {
System.err.println(e.getMessage());
}
return rs;
} 这个方法是用做条件查询的,但是查询SQL取的不对吧,是不是应该这样getSql =getSql+ " and m_name ='"+e_name+"'";还有里面的第一个条件应该没有"and";
此外BEAN里方法感觉都是分散的,没有联合起来工作啊。也许我的水平低,总是感觉的代码都是问题