我们会用到前面的JDBCTools (连接,关闭数据库的方法)
1.在mysql里面创建一个名为student的数据库 里面有id(int) idcade(String) name(String)
2.在编程软件中我们创建与之相对应的student类 : 数据封装 , 构造 , toString
public class Student {
// 与数据库里面的东西相对应
//id的内容
private int id;
//身份证信息
private String idcade;
//名字
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getIdcade() {
return idcade;
}
public void setIdcade(String idcade) {
this.idcade = idcade;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
//有参数构造器 点击 Source Generrate Constructor using Fields
public Student(int id, String idcade, String name) {
super();
this.id = id;
this.idcade = idcade;
this.name = name;
}
//无参构造器
public Student() {}
@Override
public String toString() {
return "Student [id=" + id + ", idcade=" + idcade + ", name=" + name + "]";
}
}
<获取单个对象>
//直接传入sql语句 然后返回Student对象
private Student getStudent(String sql) {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
Student stu = null;
//后面的代码都是固定模式
conn = JDBCTools.getConnection();
String sql = "select * from student where id="+id;
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
if(rs.next())
{
stu = new Student(rs.getInt(1),rs.getString(2),
rs.getString(3));
}
System.out.println(stu.toString());
}catch (SQLException e)
{
e.printStackTrace();
}
finally {
JDBCTools.release(rs, ps, conn);
}
return stu;
}
<获取所有对象> 用List接收
//获得所有客户资料
public List<Student> getStudents() throws Exception
{
//创建List集合
List<Student> students= new ArrayList<Student>();
Student stu = null;
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
connection = JDBCTools.getConnection();
statement = connection.createStatement();
resultSet = statement.executeQuery(sql);
if(resultSet.next())
{
stu = new Student(resultSet.getInt(1),resultSet.getString(2),
resultSet.getString(3));
//把Student这个对象 放入List集合中
students.add(stu);
}
} catch (Exception e) {
}finally
{
JDBCTools.release(resultSet, statement, connection);
}
return students;
}
//自己随机定义一个方法 我就不CP了
//我们遍历数据库所有student的信息 代码部分如下
主类类名 xx = new 主类类名();
List<Student> ss = xx.getStudents();
for(Student s: ss)
{
System.out.println(s.toString());
}