jdbc是java中的数据库连接技术,功能非常强大。

数据库访问过程

1.加载数据库驱动

要通过jdbc去访问某数据库必须有相应的JDBC driver 它往往由数据库厂商提供,是链接jdbc API 和具体数据库之间的桥梁。不同的厂商提供的数据库连接驱动不一样,我们需要下载特定的驱动并安装。

java中调用驱动的代码一般为:

Class.forName("String driver");   //不同的数据库驱动,driver值也不同

例如:加载mysql驱动:

Class.forName("com.mysql.jdbc.Driver");

常见的数据库驱动字符串

数据库 驱动字符串
DBMS Driver Class
Access Sun.jdbc.odbc.JdbcOdbcDriver
Mysql com.mysql.jdbc.Driver
Oracle oracle.jdbc.driver.OracleDriver
SQL Server 2000 com.microsoft.jdbc.sqlserver.SQLServerDriver
SQL Server 2005 com.microsoft.sqlserver.jdbc.SQLServerDriver

2连接数据库

数据库加载完成后,就可以连接数据库,创建数据库连接语句如下:

 Connection conn = DriverManager.getConnection(url,username,password);

  DriverManage类是jdbc的管理层,作用于用户和驱动程序之间。通常调用DriverManage.getConnection方法进行数据库连接

url表示连接数据库的字符串;

username表示数据库的用户名;

password表示用户的密码;

常见的数据库连接字符串如下

数据库 连接字符串
Access "jdbc:odbc:ODBC 数据库名称"
Mysql "jdbc:mysql://主机域名或ip地址:3306/数据库名"
Oracle “jdbc:oracle:thin:@主机域名或ip:1521:数据库名”
sql server2000 “jdbc:microsoft:sqlserver://主机域名或ip:1433;databaseName=数据库名”
sql server2005 “jdbc:sqlserver://主机域名或ip:1434;databaseName=数据库名”

Connection

Connection类代表程序与数据库的链接,并拥有创建数据库操作对象的方法,已完成基本的数据库操作。

同时为数据库事物处理提供提交和回滚的方法。

3.创建数据库访问对象,执行sql语句

访问数据库的对象主要有三种:Statement      PreparedStaatement     CallableStatement

Statement    

使用Connection 对象的createStatement()方法来创建该对象。主要用于执行不带参数的sql语句,提交的sql语句可以是select,insert,update,delete语句 例如:

Statement st = conn.createStatement();

ResultSet rs = st.executeQuery("select * from A");

如果调用的是 insert,update,delete方法,不需要返回查询结果的应该采用 executeUpdate()方法,返回操作影响的行数,类型为int

PreparedStatement

 如果要向数据库服务器传递带参数的sql 则需要用PreparedStatement对象了。例如:

String sql = "insert into user(name,passwd) values(?,?)";

PreparedStatement psm = conn.PrepareStatment(sql);

psm.setString(1,"wang");

psm.setString(2,"123");

psm.execute();

4.处理结果集 

结果集ResultSet对象是jdbc中比较重要的一个对象,查询操作将数据作为ResultSet对象返回,ResultSet包含任意数量的命名列,可以按名称访问这些列,也可以按列号访问。下面是常见的访问并显示结果集的代码:

ResultSet rs = st.executeQuery("select name,password from user");

while(rs.next()){

rs.getString(1);

rs.getString(2);

}

5.一个完整的基本sql查询方法

improt java.sql.*;

public class Dao{

private static String url ="数据库连接字符串";

private static String username="用户名";

private static String passwd="密码";

private Connection conn = null;

private Statement st = null;

private ResultSet rs = null;

public Dao(){

try{

Class.forName("数据库驱动");

}catch(Exception e){

System.out.println("连接出错");

}

}

public void Query(){

try{

conn = DriverManage.getConnection(url,username,passwd);

st = conn.createStatement();

rs = st.executeQuery("select * from user");

while(rs.next()){

System.out.println(rs.getString(1));

System.out.println(rs.getString(2));

}

}catch(Exception e){

}finally{

rs.close();

st.close();

conn.close();

}

}

}

基本的jdbc查询就完成了。

JDBC连接的更多相关文章

  1. JDBC连接SQL Server代码模板

    *                  JDBC连接SQL Server数据库 代码模板* Connection: 连接数据库并担任传送数据的任务:* Statement :  执行SQL语句:* Re ...

  2. JDBC连接MySQL数据库代码模板

    下面这个例子是最简单的JDBC连接MySQL数据库的例子. 一般步骤: 1.注册驱动: 2.建立连接: 3.创建语句: 4.处理结果: 5.释放资源. 注意: 1.软件开发环境:MyEclipse 8 ...

  3. Java操作Sqlite数据库-jdbc连接

    Java操作Sqlite数据库步骤: 1. 导入Sqlite jdbc 本文使用sqlite-jdbc-3.7.2.jar,下载地址 http://pan.baidu.com/s/1kVHAGdD 2 ...

  4. Field 'id' doesn't have a default value(jdbc连接错误)

    JDBC 连接错误: 编写数据库连接增添数据时,出现以下错误: error : java.sql.SQLException: Field 'id' doesn't have a default val ...

  5. JDBC连接MySQL 方法 实例及资料收集

    JDBC连接MySQL 方法 实例及资料收集 准备工作 首先,安装MySQL,配置用户名和密码,创建数据库. 可参见之前的文章: http://www.cnblogs.com/mengdd/p/315 ...

  6. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  7. Java使用JDBC连接MySQL数据库

    1.引用 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写 ...

  8. jdbc连接oracle数据库

    /*** 通过改变配置文件来连接不同数据库*/package com.xykj.jdbc; import static org.junit.Assert.*; import java.io.Input ...

  9. JDBC连接各种数据库的字符串,就是不好记

    JDBC连接各种数据库的字符串大同小异,在此总结一下,备忘. oracle    driverClass:oracle.jdbc.driver.OracleDriver    url:jdbc:ora ...

  10. Crystal Reports 2008(水晶报表) JDBC连接mysql数据库

    在本blog中,主要介绍的是Crystal Reports 2008使用JDBC连接mysql数据库. 在连接之间,首先要确认你电脑上面都安装了mysql数据库. 其次,就是jdbc连接数据时候所使用 ...

随机推荐

  1. Oracle logminer 日志挖掘

    Table of Contents 1. LOGMNR简介 2. 创建数据字典 2.1. 外部文件存储数据字典 2.2. redo log 存储数据字典 3. 添加需要分析的文件 4. 开始分析文件 ...

  2. gerrit原理

      个人理解: 这个就是审核代码是否合理性的工具,一般是资深研发人工确认代码是否存在缺陷,通过发送邮件通知变化. 也可理解为这个是个git服务器,多一个代码审查的功能. 但是它是个web界面,方便管理 ...

  3. rpm 命令使用 和 lsof -p 1406 使用

    #安装RPM -v 显示详细信息 -h 显示进度 -i 安装 -U 升级 -q 查询 -ql 查看rpm 包装的文件 - qf 查看命令属于哪个RPM 包 -qi 查看RPM包的详细信息 [root@ ...

  4. k8s 1.12.6版的kubeadm默认配置文件

    这个对于提高安装配置的便捷性,相当有帮助. 命令如下: kubeadm config print-default 输出如下: apiEndpoint: advertiseAddress: 1.2.3. ...

  5. QQ登录用到的URL

    //QQ 登陆页面的URL,client_id就是APP ID,会返回一个codehttps://graph.qq.com/oauth2.0/authorize?response_type=code& ...

  6. Java数据结构与算法结构图

  7. 【BZOJ3252】攻略

    题解: 首先贪心的会发现我们每次一定会选当前权值和最大的那个 然后在于怎么维护这个最大值 我们发现每个修改实际上是对沿途所有点的子树的修改 所以用线段树维护就可以了.. 另外注意有重复部分,但一定是包 ...

  8. Google搜索

    https://www.google.com/intl/br/insidesearch/tipstricks/all.html 如何用好谷歌等搜索引擎?

  9. .net core 中的 DependencyInjection - IOC

    概要:因为不知道写啥,所以随便找个东西乱说几句,嗯,就这样,就是这个目的. 1.IOC是啥呢? IOC - Inversion of Control,即控制反转的意思,这里要搞明白的就是,它是一种思想 ...

  10. nginx做代理离线下载插件

    一.背景 被安装的服务器不能上网,无法下载插件,一个插件都还好,但是遇到插件依赖很强的需要几十个插件的依赖,这样就很麻烦. 二.环境 192.168.182.155     安装nginx     能 ...