public List<Passenger> find(int pageno){
List<Passenger> list = new ArrayList<Passenger>();
String sql="select * from passengerMessage limit"+ 3*(pageno-1)+",3";
ResultSet rs=null;
System.out.println("1");这一句执行了
try {
Statement st = conn.createStatement();
System.out.println("2");这句以及往下没执行且报出下面截图的错
rs=st.executeQuery(sql);
System.out.println("3");
st.close();
while(rs.next()){
System.out.println("4");
Passenger passenger=new Passenger(rs.getString(1),rs.getString(2),rs.getString(3));
System.out.println("5");
list.add(passenger);
}
} catch (Exception e) {
System.out.println(e.toString());
}finally{
try { conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} return list;
}
说是数据库连接已经断了,但是我没有close,我搜了一下说是连接池的问题,但是我写的bean+servlet没有用到连接池,我也不会用啊servletbeanjavalist
List<Passenger> list = new ArrayList<Passenger>();
String sql="select * from passengerMessage limit"+ 3*(pageno-1)+",3";
ResultSet rs=null;
System.out.println("1");这一句执行了
try {
Statement st = conn.createStatement();
System.out.println("2");这句以及往下没执行且报出下面截图的错
rs=st.executeQuery(sql);
System.out.println("3");
st.close();
while(rs.next()){
System.out.println("4");
Passenger passenger=new Passenger(rs.getString(1),rs.getString(2),rs.getString(3));
System.out.println("5");
list.add(passenger);
}
} catch (Exception e) {
System.out.println(e.toString());
}finally{
try { conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} return list;
}
说是数据库连接已经断了,但是我没有close,我搜了一下说是连接池的问题,但是我写的bean+servlet没有用到连接池,我也不会用啊servletbeanjavalist
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class dbConnection {/*
Class.forName( "com.mysql.jdbc.Driver").newInstance();
url="jdbc:mysql://localhost:3306/flightTicket?user=root&password=flight&useUnicode=true&characterEncoding=UTF-8"
conn=DriverManager.getConnection(url);
*/
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
public dbConnection(){//加载数据库驱动
try {
Class.forName("com.mysql.jdbc.Driver");
conn = getConnection();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} public Connection getConnection(){//获得数据库连接
System.out.println("getConnection()被调用");
String url = "jdbc:mysql://localhost:3306/flightTicket";
String user = "root";
String password = "flight";
try {
conn = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
} public void close(){//关闭数据库连接,释放资源
System.out.println("close被调用了关闭数据库连接,释放资源");
try {
if(rs!=null)rs.close();
if(pstmt!=null)pstmt.close();
if(conn!=null)conn.close(); } catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
这个去掉 试试
楼主代码中的conn是什么,拿出来看看。