本章节以及后续章节使用的是mysql-connector-java-5.1.40和jdk1.7版本
以下代码就太熟悉了,很多同学闭着眼睛都能写出来。就是一段连接mysql数据库的代码。
public static void main(String[] args) throws Exception{ Class.forName("com.mysql.jdbc.Driver") ; Connection con = DriverManager.getConnection("jdbc:mysql://192.168.166.30:3359/pop_serviceno?allowMultiQueries=true" , "pop_crm_rw","pop_crm_rw3ed" ) ; String sql = "SELECT * from wireless_dynamic_113 where activity_name = ?"; PreparedStatement pst = con.prepareStatement(sql); int index = 1; pst.setObject(index,"www1233455444"); ResultSet resultSet = pst.executeQuery(); while (resultSet.next()){ String activity_name = resultSet.getString("activity_name"); System.out.println("名称:"+activity_name); }}
本节作为一个引子,非常简单,首先使用Class.forName方法注册了一个mysql的driver,然后使用DriverManager获取数据库的连接,获取连接以后,使用PreparedStatement 的executeQuery方法执行传递进去的sql字符串,然后使用ResultSet进行接收执行结果,遍历以后取出需要的值。
这段看似简单的代码,到底做什么事情,Class.forName是做什么的,是如何连接到相应的数据库的,然后又是如何把sql语句发送到数据库进行执行的呢。这些东西对于客户端程序员来说也许从来没有探究过。自己这段时间突然有兴趣对这部分内容研究一下,看看里面有什么魔法,接下来的章节会逐步的去跟这些内容的源代码,一探究竟。