JDBC连接数据库的步骤

来源:互联网 发布:荧光文字配图美图软件 编辑:程序博客网 时间:2024/04/30 06:02

JDBC连接数据库的步骤

  • 注册驱动

    Class.forName(“com.mysql.jdbc.Dirver”); 推荐使用这种方式,不会对具体的驱动类产生依赖。

    DirverManager.registerDirver(com.mysql.jdbc.Driver);会造成DirverManager中产生两个一样的驱动,并会对具体的驱动类产生依赖

    System.setProperty(“jdbc.dirvers”,”driver1:driver2”);虽然不会对具体的驱动类产生依赖,但是注册不太方便,很少使用

  • 建立连接(Connecton)
    Connection conn=DirverManager.getConnection(url.user,password);

    url格式:JDBC:子协议:子名称//主机名:端口/数据库名?属性名=属性值&...:jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8";User passord可以用“属性名=属性值”方式告诉数据库其他参数参加:useUnacode = true&characterEncoding=utf-8.
  • 创建执行SQL的语句(Statement)

  • 执行语句

  • 处理执行结果(ResultSet)

  • 释放资源

package cn.congxing.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class JdbcTest { public static void main(String[] args) {  //数据库连接对象  Connection connection =null;  //预编译statement  PreparedStatement preparedStatement=null;  //结果集  ResultSet resultSet= null;  String url="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8";  String username="root";  String password="123";  try {   //注册加载驱动   Class.forName("com.mysql.jdbc.Driver");   //获取连接   connection = DriverManager.getConnection(url, username, password);   //定义sql   String sql = "select * from user where username= ?";   //获取预处理statement   preparedStatement = connection.prepareStatement(sql);   preparedStatement.setString(1, "王五");   //向数据库发出sql执行查询,查询出结果集   resultSet = preparedStatement.executeQuery();   //遍历查询结果集   while(resultSet.next()){    System.out.println(resultSet.getString("id")+"--"+resultSet.getString("username"));   }  } catch (Exception e) {   e.printStackTrace();  }finally{   //释放资源   if(resultSet!=null){    try {     resultSet.close();    } catch (SQLException e) {     e.printStackTrace();    }   }   if(preparedStatement!=null){    try {     preparedStatement.close();    } catch (SQLException e) {     e.printStackTrace();    }   }   if(connection!=null){    try {     connection.close();    } catch (SQLException e) {     e.printStackTrace();    }   }  } }}
0 0
原创粉丝点击