<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">JDBC——Java database connection 即Java连接数据库技术,这看似简单,却很重要</span>
1.首先,我们要创建一个驱动类对象
有两种方法:
1)
<span style="white-space:pre"> </span>Class.forName("类名(包含包名)").newInstance();
<span style="white-space:pre"> </span>//由于此方法,在编译时,类可以不存在,所以会产生异常,要对其进行处理
2)就像正常创建一个对象一样,
<span style="white-space:pre"> </span>类名 对象名 = new 类名();//这种方式要求类必须存在,所以不会报错
2.获取连接数据库的对象
conn = DriverManager.getConnection(url,user,psw);
//url包括协议名,服务器的域名,端口号,数据库名
//例:jdbc:mysql://localhost:3306/student
3.创建sql语句,即增删查改操作,也有两种方式:statement和preparedStatement
前者相对来说不如后者灵活多变,不适合创建带变量的sql语句,
String sql = "insert into student_info(name,age) value(,)"--这里要固定值
//创建statement preparedstatement
statement stat = conn.statement();
stat.execute(sql);
string sql = "insert into student_info(name,age) value(?,?)"--相当于占位符
Preparedstatement stat = conn.preparestatement(sql);
stat.execute();
注意,最后的执行语句也略有不同。
下面,我给大家来个示例:
public void jdbcDemo(){
//1.加载驱动类对象
//两种方法
try {//第一种,在编译时,类不存在也会通过,所以会有异常
Class.forName("com.mysql.jdbc.Driver").newInstance();
//2.获取连接对象
Connection conn = DriverManager.getConnection(
//这个url 包扩协议 域名 端口号 数据库名
"jdbc:mysql://localhost:3306/studentcourserj0215",
"root", "123");
//3.sql语句 statement PreparedStatement
//1)sql语句
//2)用连接对象创建statement
//3)执行statement
String sql = "insert into studentsrj0215 (Sno,Sname,Ssex,Sbirthday,Sdept) values(?,?,?,?,?)";
PreparedStatement pstate = conn.prepareStatement(sql);
pstate.setString(1, "02");
pstate.setString(2, "张三");
pstate.setString(3, "男");
pstate.setString(4, "2000-05-05");
pstate.setString(5, "计算机");
pstate.execute();
System.out.println("插入成功!!");
} catch (Exception e) {
e.printStackTrace();
}
}
虽然看似简单,还需多多练习才能掌握。有兴趣的话,还可以测试下preparedstatement与statement的执行效率