。1234 2019-11-20 11:13 采纳率: 0%
浏览 1249

java连接数据库返回数据为空

package servlet;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

public class Demo2 {
/*
查询所有student对象
*/
public static void main(String[] args){
List list = new Demo2().findAll();
System.out.println(list);
}
public List findAll(){
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
List list = null;
try {
//注册驱动
Class.forName("com.mysql.jdbc.Driver");
//获取连接
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/kaorou","root", "root");
//定义sql
String sql = "select * from user ";
//获取执行sql的对象
stmt = conn.createStatement();
//执行sql
rs = stmt.executeQuery(sql);
//便利结果集,封装对象,装载集合
Student stu = null;
list = new ArrayList();
while(rs.next()){ //rs如果有下一个就循环,括号中的参数与数据库中的字段名一致
int id = rs.getInt("id");
String name = rs.getString("name");
int email = rs.getInt("email");
int age = rs.getInt("age");

            //创建stu对象
            stu = new Student();
            stu.getId(id);
            stu.getName(name);
            stu.getEmail(email);
            stu.getAge(age);


            //装载集合
             list.add(stu);
         }

     } catch (ClassNotFoundException | SQLException e) {
         e.printStackTrace();
     }finally { //先声明的后关
         if (rs != null) {
             try {
                 rs.close();
             } catch (SQLException e) {
                 e.printStackTrace();
             }
         }
         if (stmt != null){
             try {
                 stmt.close();
             } catch (SQLException e) {
                 e.printStackTrace();
             }
         }
         if (conn != null){
             try {
                 conn.close();
             } catch (SQLException e) {
                 e.printStackTrace();
             }
         }
     }
     return list;
 }

}

package servlet;
/*
封装student表数据
*/
public class Student {
private int id;
private String name;
private int email;
private int age;

public int getId(int id) {
    return this.id;
}

public void setId(int id) {
    this.id = id;
}

public void getName(String name) {
}

public void setName(String name) {
    this.name = name;
}

public int getEmail(int email) {
    return this.email;
}

public void setEmail(int email) {
    this.email = email;
}

public int getAge(int age) {
    return this.age;
}

public void setAge(int age) {
    this.age = age;
}


@Override
public String toString() {
    return "Student{" +
            "id=" + id +
            ", name='" + name + '\'' +
            ", sex='" + email + '\'' +
            ", age=" + age +

            '}';
}

}

控制台报错:
[Student{id=0, name='null', sex='0', age=0}, Student{id=0, name='null', sex='0', age=0}, Student{id=0, name='null', sex='0', age=0}, Student{id=0, name='null', sex='0', age=0}, Student{id=0, name='null', sex='0', age=0}]

  • 写回答

4条回答 默认 最新

  • 呓语的风 2019-11-20 11:23
    关注

    这不是已经查询出来了吗,有5条记录啊

    评论

报告相同问题?

悬赏问题

  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件
  • ¥15 visual studio2022中文乱码无法解决
  • ¥15 关于华为5g模块mh5000-31接线问题
  • ¥15 keil L6007U报错
  • ¥15 webapi 发布到iis后无法访问
  • ¥15 初学者如何快速上手学习stm32?
  • ¥15 如何自动更换布娃娃图片上的衣服
  • ¥15 心理学eprime编程
  • ¥15 arduino esp8266开发