[code="java"]
public class TestJdbc {
private static List tbs;
public static void main(String[] args) {
String url ="jdbc:mysql://localhost/testjdbc?user=root&password=root&useUnicode=true&characterEncoding=8859_1";
TestBean tb=new TestBean();
ResultSet rs=null;
try {
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery("select * from test");
while(rs.next()){
tb.setId(rs.getLong("id"));
tb.setName(rs.getString("name"));
tb.setPassword(rs.getString("password"));
tbs.add(tb);
}
for(TestBean tb1: tbs){
System.out.println(tb1.getName());
System.out.println(tb1.getPassword());
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
[/code]
tbs.add(tb);报了一个 java.lang.NullPointerException。求解!!!!
不好意思,刚才把泛型类型写错了。
该问题的原因是:静态私有对象“tbs”未被初始化,楼上的代码修改得很好,也可以将这行代码
“private static List tbs”
修改成这样“private static List tbs = new ArrayList();”;。
[code="java"]public class TestJdbc {
public static void main(String[] args) {
String url ="jdbc:mysql://localhost/testjdbc?user=root&password=root&useUnicode=true&characterEncoding=8859_1";
List<TestBean> tbs = new ArrayList<TestBean>();
Connection conn= null;
Statement stmt= null;
ResultSet rs=null;
try {
conn= DriverManager.getConnection(url);
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from test");
while(rs.next()){
TestBean tb=new TestBean();
tb.setId(rs.getLong("id"));
tb.setName(rs.getString("name"));
tb.setPassword(rs.getString("password"));
tbs.add(tb);
}
for(TestBean tb1: tbs){
System.out.println(tb1.getName());
System.out.println(tb1.getPassword());
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (rs != null)
try {
rs.close();
} catch (Exception e) {
}
if (stmt != null)
try {
stmt.close();
} catch (Exception e) {
}
if (conn != null)
try {
conn.close();
} catch (Exception e) {
}
}
}
[/code]
该问题的原因是:静态私有对象“tbs”未被初始化,楼上的代码修改得很好,也可以将这行[code="java"]private static List tbs;[/code]代码修改成这样[code="java"]private static List tbs = new ArrayList();[/code]。
楼主人家都给你解决了,怎么还不关闭问题。
不厚道