JDBC,你还记得她的全称是啥么?中文几个意思?
今儿咱再回来拉练一把当初的JDBC!
JDBC原理浅析,当达到一定层级后,回头看这些当初的细节,真的入门后,也许你越走越远,却忘了回头看看走过的路,会发现温故而知新,是那么的真实。
JDBC:Java Database Connectivity ,Java访问数据库的解决方案。
JDBC中定义了一些接口:
1、驱动管理:
DriverManager
2、连接接口
Connection
DatabasemetaData
3、语句对象接口
Statement
PreparedStatement
CallableStatement
4、结果集接口
ResultSet
ResultSetMetaData
JDBC访问数据库工作的时候,是这么个走法:
加载驱动,建立连接
创建语句对象
执行SQL语句
处理结果集
关闭连接
细分析下:
加载驱动
要使用JDBC接口,需要先将对应数据库的实现部分(驱动)加载进来。
装载驱动类,驱动类通过static块实现在DriverManager中的“自动注册”。
说人话:,就是引入相应的驱动包后,调用下下。
Connection 创建连接
在加载驱动之后,使用url、username、password三个参数,创建到具体数据库的连接。
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:testDB","laowang","laowang123password");
Statement
Statement接口用来处理发送到数据库的SQL语句对象,通过Connection对象创建.。
说码话:
Statement stmt=conn.createStatement();
//1.execute方法,如果执行的sql是查询语句且有结果集则返回true,如果是非查询语句或者没有结果集,返回false
boolean flag = stmt.execute(sql);
//2.执行查询语句,返回结果集
ResultSetrs = stmt.executeQuery(sql);
//3.执行DML语句,返回影响的记录数
int flag = stmt.executeUpdate(sql);
返回对象的结果集:ResultSet
说码话:
String sql = "select * from emp";ResultSetrs = stmt.executeQuery(sql);while (rs.next()) {+rs.getString("ename") );}
在网上看到一个很贴切的图:
说图话:
好了,JDBC就浅析到这吧。
领取专属 10元无门槛券
私享最新 技术干货