本代码主要实现了与MySQL数据库的连接和查询操作。首先,在DBtools类中,通过JDBC驱动加载器加载MySQL驱动程序,创建与数据库的连接,并提供了关闭连接的方法。接着,实现了一个getStudent()方法,用于查询student表中的所有记录,并将结果封装到一个ArrayList中返回。最后,在main()方法中,通过DBtools对象调用getStudent()方法获取所有学生记录,并利用Student类的ins()方法打印每个学生的信息。Student类是一个简单的JavaBean,用于封装学生信息。在实际应用中,可以根据需要对DBtools类进行修改,以实现更复杂的数据库操作。
package 数据库的创建执行;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
public class DBtools {
Connection con = null;
Statement st = null;
ResultSet res = null;
String url = "jdbc:mysql://localhost:3306/mydb";
String use = "root";
String pwd = "******";
public DBtools() {
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("ok");
} catch (ClassNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
try {
con = DriverManager.getConnection(url, use, pwd);
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
public void close() {
try {
if (res != null) {
res.close();
}
if (st != null) {
st.close();
}
if (con != null) {
con.close();
}
} catch (SQLException e) {
// TODO: handle exception
}
}
public ArrayList<Student>getStudent(){
ArrayList<Student>stlist = new ArrayList<Student>();
String sql = "select * from student";
try {
st = con.createStatement();
res = st.executeQuery(sql);
while(res.next()) {
stlist.add(new Student(res.getString(1),res.getString(2),res.getString(3)));
}
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
return stlist;
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
DBtools db = new DBtools();
ArrayList<Student>st = db.getStudent();
db.close();
for(Student s:st) {
s.ins();
}
}
}
class Student{
String id;
String name;
String tel;
public Student() {
}
public Student(String id,String name,String tel) {
this.id = id;
this.name = name;
this.tel = tel;
}
public void ins() {
System.out.println("id:"+id+" name:"+name+" tel:"+tel);
}
}