JDBC编程步骤
- 加载数据库驱动。
通常使用Class类的forName()静态方法来加载驱动。
Class.forName(driverClass)
dirverClass:
mysql---Class.forName(“com.mysql.jdbc.Driver”)
oracle---Class.forName(“oracle.jdbc.driver.OracleDriver”) - 通过DriverManager获取数据库连接。
DriverManager.getConnection(String url, String user, String password)
jdbc:mysql://hostname:port/databasename
jdbc:oracle:thin:@hostname:port:databasename - 通过Connection对象创建Statement对象。Connection创建Statement的方法有如下3个。
1、createSatement():创建基本的Statement对象
2、prepareStatement(String sql):根据传入的sql语句创建预编译的Statement对象
3、prepareCall(String sql):根据传入的sql语句创建CallableStatement对象 - 使用Statement执行Sql语句。所有的Statement都有如下3个方法来执行sql语句
1、execute():可以执行任何sql语句,但比较麻烦。
2、executeUpdate():主要用于执行DML和DDL语句。执行DML语句返回受sql语句影响的行数,执行DDL语句返回0
3、executeQuery():只能执行查询语句,执行后返回代表查询结果的ResultSet对象 - 操作结果集。如果执行的sql语句是查询语句,则执行结果将返回一个ResultSet对象,该对象里保存了sql语句查询的结果。程序可以通过操作该ResultSet对象来取出查询结果。ResultSet对象主要提供了如下两类方法:
1、next() previous() first() last() beforeFirst() afterLast()
absolute()等移动记录指针的方法。
2、getXxx()方法获取记录指针指向行、特定列的值。该方法既可以使用列索引作为参数,也可以使用列名作为参数。 - 回收数据库资源。包括关闭ResultSet, Statement,Connection等资源,
public static void main(String[] args) { try { Class.forName("com.mysql.jdbc.Driver"); try { Connection conn = DriverManager.getConnection( "jdbc:mysql://127.0.0.1:3306/house" ,"root","123456"); Statement stmt = ResultSet rs = stmt.executeQuery("select * from hs_menu"); while(rs.next()){ System.out.println(rs.getString("name")); } rs.close(); stmt.close(); conn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (ClassNotFoundException e) { e.printStackTrace(); } } |