就用javabean啊一个表用一个值对象,最后返回list也行,返回值对象数组也行
解决方案 »
- Hibernate插入数据报错
- struts2里国际化问题
- jfeechar曲线图显示数据点数值问题(急!急!急)
- Struts html:select 下拉框动态链接数据问题
- ibatis如何使用动态参数,谢谢.
- JAVA 连接 MS SQL Server 2000数据库有几种方法?
- 连接mysql出错
- 高分请教jasperReport问题。问题解决,立即给分
- jdk1.5 中的StringBuffer类
- 栈溢出异常(StackOverflowError)不知怎么搞才好,求高手
- 在EJB里如何使用retry机制?
- J2EE自带的form认证(j_security_check)提供登录却没提供更改角色和退出登录的功能....求助!
for (;;) {
break;
}
}
try {
while (rs.next()) {
Book_Info_Bean Book = new Book_Info_Bean();
Book.setBook_ID(rs.getString(1).trim());
Book.setBook_Name(rs.getString(2).trim());
Book.setBook_ISBN(rs.getString(3).trim());
Book.setBookType_ID(rs.getString(4).trim());
Book.setBook_Author(rs.getString(5).trim());
Book.setBook_Price(rs.getDouble(6));
Book.setPublisherName(rs.getString(7).trim());
Book.setPublishDate(rs.getString(8).trim());
Book.setBook_Introduce(rs.getString(9).trim());
Book.setBook_Scale(rs.getFloat(10));
Book.setBook_Num(rs.getInt(11));
Book.setClickCount(rs.getInt(12));
Book.setBook_Type(rs.getString(13).trim());
list.add(Book);
}在JSP里面用logic标签读取
String sql = "select * from 管理员表";
ps = dbc.getPreparedStmt(sql);
rs = ps.executeQuery();
if(rs.next()){
do{
UserInfo userinfo = new UserInfo();
userinfo.setUserid(rs.getInt(1));
userinfo.setUsername(rs.getString(2).trim());
userinfo.setPassword(rs.getString(3).trim());
userinfo.setQxmc(rs.getString(4).trim());
list.add(userinfo); //这里抛空指针异常
}while(rs.next());
}
return list;
}
根据上面大哥的思路,list.add(userinfo); //这里抛空指针异常。
我用
public void getUserInfo2() throws SQLException{
String sql = "select * from 管理员表";
ps = dbc.getPreparedStmt(sql);
rs = ps.executeQuery();
if(rs.next()){
do{
System.out.println(rs.getInt(1));
System.out.println(rs.getString(2).trim());
System.out.println(rs.getString(3).trim());
System.out.println(rs.getString(4).trim());
}while(rs.next());
}
}测试,连接数据库没问题。Test.java
public static void main(String[] args) throws SQLException {
DoUserInfo d = new DoUserInfo();
List list = null;
list = d.getUserInfo(); //这里空指针异常。
//d.getUserInfo2();
}UserInfo.java如下
package getdb;public class UserInfo {
private int userid = 0;
private String username = null;
private String password = null;
private String qxmc = null;
public void setUserid(int userid){
this.userid = userid;
}
public void setUsername(String username){
this.username = username;
}
public void setPassword(String password){
this.password = password;
}
public void setQxmc(String qxmc){
this.qxmc = qxmc;
}
public int getUserid(){
return this.userid;
}
public String getUsername(){
return this.username;
}
public String getPassword(){
return this.password;
}
public String getQxmc(){
return this.qxmc;
}}
为什么小菜用list返回这个list就出现空指针异常啦?大虾们帮忙看看,谢谢。
ps = dbc.getPreparedStmt(sql);
rs = ps.executeQuery();
if(rs.next()){
do{
UserInfo userinfo = new UserInfo();
userinfo.setUserid(rs.getInt(1));
userinfo.setUsername(rs.getString(2).trim());
userinfo.setPassword(rs.getString(3).trim());
userinfo.setQxmc(rs.getString(4).trim());
list.add(userinfo); //这里抛空指针异常
}while(rs.next());
}
return list;
}list.add(userinfo); //这里抛空指针异常
你这个list在哪定义的?我怎么感觉getUserInfo方法中没这个对象
private DBOperater dbc = null;
private PreparedStatement ps = null;
private ResultSet rs = null;
private List list = null;类前面定义初始化了啊!
private List list = null;
然后调用方法
list.add(userinfo); //这里抛空指针异常当然会抛出空指针异常了,要这样初始化一下:
private List list = new List();