jdbc操作数据库流程:
第一步:加载数据库连接驱动;
第二部:获取数据库连接对象
第三步:创建发送对象
第四步:执行sql返回结果集
第一步:加载数据库连接驱动;
第二部:获取数据库连接对象
第三步:创建发送对象
第四步:执行sql返回结果集
第五步:关闭结果集,关闭回话,关闭连接
- /**
- * 创建java_jdbc连接
- */
- public class CreateJDBCConnection {
- /**
- * java程序都是通过 jdbc连接数据库的,这样我们就可以通过编写sql来对数据库进行编程操作,实现实现业务数据操作
- * jdbc主要功能
- * (1) 建立数据库或者其他数据源的连接
- * (2)向数据库发送sql语言
- * (3)处理数据库的返回结果
- * jdbc常用类和接口
- * 建立数据库连接 Connection,
- 建立操作指令statement,
- 执行查询的指令executeQuery,
- 获取查询结果 ResultSet等
- *
- * 驱动程序管理类
- * DriverManager是jdbc的驱动管理类,作用于用户与驱动程序之间它跟踪当前可执行驱动程序,并在数据库和相应的驱动之间建立连接,
- DriverManager也可以处理 登录连接的时间限制
- * 提供的常用方法有 DriverManger.getConnection().
- *
- * 声明类Statement
- * Statement对象用于将SQL语句发送到数据库中。
- 实际上有三种Statement对象,它们都作为在给定链接上执行SQL语句的包容器:
- Statement、
- PreparedStatement(它从Statement继承而来)
- CallableStatement(它从PreparedStatement继承而来)。
- 它们都专用于发送特定类型的SQL语句:
- (1)Statement对象用于执行不带参数的简单的SQL语句;Statement接口提供了执行语句和获取结果的基本方法。
- (2)PerparedStatement对象用于执行带或不带IN参数的预编译SQL语句;PeraredStatement接口添加处理IN参数的方法;
- (3)CallableStatement对象用于执行对数据库已存储过程的调用;CallableStatement添加处理OUT参数的方法。
- Statement提供了许多方法,最常用的方法如下:
- (1)execute()方法:运行语句,返回是否有结果集。
- (2)executeQuery()方法:运行查询语句,返回ReaultSet对象。
- (3)executeUpdata()方法:运行更新操作,返回更新的行数。
- (4)addBatch()方法:增加批处理语句。
- (5)executeBatch()方法:执行批处理语句。
- (6)clearBatch()方法:清除批处理语句。
- */
- //传统jdbc连接
- public Map getConnection(){
- Connection connection=null;
- String url="jdbc:mysql://127.0.0.1:3306/test";
- String user="root";
- String password="password";
- Map map=new HashMap();
- try {
- //1.加载数据库驱动
- Class.forName("com.mysql.jdbc.Driver");
- //2.创建 数据库连接
- connection = DriverManager.getConnection(url, user, password);
- //3.创建发送对象
- String sql="SELECT * FROM table";
- PreparedStatement preparedStatement = connection.prepareStatement(sql);
- //4.返回结果集
- ResultSet resultSet = preparedStatement.getResultSet();
- //获取结果集中的数据
- while (resultSet.next()){
- System.out.println(resultSet.next());
- map.put(resultSet.getFetchSize(),resultSet.next());
- }
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (SQLException e) {
- e.printStackTrace();
- }finally {
- //5.关闭连接
- if (connection!=null){
- try {
- connection.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
- return map;
- }
- }