吊桶的方法:
String db;
for(int i=1;i<=100;i++){
if (i < 10) {
db = "00" + i;
}
else if (i >= 10 && i < 100) {
db = "0" + i;
}else{
db = "100";
}
HttpSession session = request.getSession();
session.setAttribute("db", db);
sflist = pnd.queryPhoneNumber(phoneNumber, request, response);
request.getSession().setAttribute("sflist", sflist);
}
实现类:: SF sf =null;
PreparedStatement ps=null;//
ResultSet resl=null;
Connection conn=null;
List<SF> sflist = new ArrayList<SF>();
try{
Class.forName("com.mysql.jdbc.Driver");
HttpSession session = request.getSession();
String db = (String)session.getAttribute("db");
System.out.println(db);
conn=DriverManager.getConnection("jdbc:mysql://192.168.20.236:3306/express"+db,"root" ,"123456");
System.out.println("链接:::"+"jdbc:mysql://192.168.20.236:3306/express"+db);
ps=conn.prepareStatement("select * from sf where f29=? or f30=? or f40=? or f41=?");
ps.setString(1, phoneNumber);
ps.setString(2, phoneNumber);
ps.setString(3, phoneNumber);
ps.setString(4, phoneNumber);
resl=ps.executeQuery();//返回查询的数量。
// 查询 的时候 一般都用while循环或者if循环;
while(resl.next()){
sf=new SF();
sf.setF1(resl.getString("f1"));
sf.setF2(resl.getString("f2"));
sf.setF3(resl.getString("f3"));
sf.setF4(resl.getString("f4"));
sf.setF5(resl.getString("f5"));
sflist.add(sf);
返回的sflist,我最后的效果是::每查询一个数据库,就在页面显示在当前数据库里面查到的符合条件的信息。。
但是现在是,它全部查完才一块显示。。而且只显示最后一个数据库查询到的信息。之前的被覆盖。。
怎么破!!
코드가 너무 단편화되어 있습니다
sflist = pnd.queryPhoneNumber(phoneNumber, request, response); 매번 새로운가요?
너무 늦었습니다. 백그라운드 루프가 너무 빨라서 너무 늦어도 필요가 없습니다.
데이터를 처리하려면 이를 클래스로 캡슐화한 다음 네트워크를 통해 프런트 데스크로 전송해야 합니다.
일단 데이터베이스를 확인하고 프런트 데스크에 목록을 반환하면 프런트 데스크에서
table
목록을 작성한 다음 반복해서 돌아옵니다.왜 한 항목을 체크하고 다른 항목을 표시해야 하나요?