在一个类中方法如下:
public ArrayList<choseInfo> findByfirstCho(choseInfo choinfo){
ArrayList<choseInfo> allCho = new ArrayList<choseInfo>();
String sql="select userName from choseinfo where firstCho =?";
conn = DB.getConn();
ptmt = DB.getPstmt(conn, sql);
try {
ptmt.setString(1, choinfo.getUserName());
rs = DB.getRs(ptmt);
while(rs.next()){
choinfo.setUserName(rs.getString(1));
allCho.add(choinfo);
}
DB.close(rs);
DB.close(ptmt);
DB.close(conn);
} catch (SQLException e) {
e.printStackTrace();
}
return allCho;
}
在另外一个类的方法中我调用上面这个方法:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
choseInfoDao dao = new choseInfoDao();
choseInfo choinfo = new choseInfo();
choinfo.setFirstCho("三九");
System.out.println(choinfo.getFirstCho());//三九
ArrayList<choseInfo> firstShanJiu = dao.findByfirstCho(choinfo);
System.out.println(choinfo.getUserName());//null
System.out.println(firstShanJiu.isEmpty());//true
}
确定有FirstCho="三九“这个数据项。为什么查询不到结果呢?我要得到用户名。
public ArrayList<choseInfo> findByfirstCho(choseInfo choinfo){
ArrayList<choseInfo> allCho = new ArrayList<choseInfo>();
String sql="select userName from choseinfo where firstCho =?";
conn = DB.getConn();
ptmt = DB.getPstmt(conn, sql);
try {
ptmt.setString(1, choinfo.getUserName());
rs = DB.getRs(ptmt);
while(rs.next()){
choinfo.setUserName(rs.getString(1));
allCho.add(choinfo);
}
DB.close(rs);
DB.close(ptmt);
DB.close(conn);
} catch (SQLException e) {
e.printStackTrace();
}
return allCho;
}
在另外一个类的方法中我调用上面这个方法:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
choseInfoDao dao = new choseInfoDao();
choseInfo choinfo = new choseInfo();
choinfo.setFirstCho("三九");
System.out.println(choinfo.getFirstCho());//三九
ArrayList<choseInfo> firstShanJiu = dao.findByfirstCho(choinfo);
System.out.println(choinfo.getUserName());//null
System.out.println(firstShanJiu.isEmpty());//true
}
确定有FirstCho="三九“这个数据项。为什么查询不到结果呢?我要得到用户名。
ptmt.setString(1, choinfo.getUserName());
你设置的时候却是调用的:
choinfo.setFirstCho("三九");
属性不一致。