JDBC简介

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

本文中中使用的数据库

数据库软件:MySQL5.6

数据库:test

表:student,其表结构如下:

+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| id           | int(11)     | NO   | PRI | 0       |       |
| name         | varchar(20) | YES  |     | NULL    |       |
| english      | float       | YES  |     | NULL    |       |
| math         | float       | YES  |     | NULL    |       |
| birthday     | date        | YES  |     | NULL    |       |
| native_place | varchar(30) | YES  |     | NULL    |       |
| chinese      | int(11)     | YES  |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+

| student | CREATE TABLE `student` (
  `id` int(11) NOT NULL DEFAULT '0',
  `name` varchar(20) DEFAULT NULL,
  `english` float DEFAULT NULL,
  `math` float DEFAULT NULL,
  `birthday` date DEFAULT NULL,
  `native_place` varchar(30) DEFAULT NU
  `chinese` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

JDBC的使用

  • 建立连接

建立链接总共3中方式:

    1. static Connection getConnection(String url)
    2. static Connection getConnection(String url, Properties info)
    3. static Connection getConnection(String url, String user, String password)

本文中将使用第3中方式。

Connection conn=null;
try {
conn=DriverManager.getConnection(url_conn, user_conn, passwd_conn);
} catch (SQLException e) {
e.printStackTrace();
}
  • 获取statement
Statement st=null;
try {
st=conn.createStatement();
} catch (SQLException e) {
e.printStackTrace();
}
  • 执行SQL语句

    • 1-查询
    • 2-插入
    • 3-删除
    • 4-修改

下面为查询的示例:

String sql_query_all_studnet="select * from student";
ResultSet res=null;
try {
res=st.executeQuery(sql_query_all_studnet);
} catch (SQLException e) {
e.printStackTrace();
}
try {
System.out.println("id"+"\t"+"name"+"\t"+"chinese"+"\t"+"math"+"\t"+"english");
while(res.next())
{
int id=res.getInt("id");
String name=res.getString("name");
int chinese=res.getInt("chinese");
double math=res.getDouble("math");
double english=res.getDouble("english");
System.out.println(id+"\t"+name+"\t"+chinese+"\t"+math+"\t"+english);
}
} catch (SQLException e) {
e.printStackTrace();
}

结果:

id  name chinese  math    english
1    潘怡茹    97    91.0    86.0
2    刘濮松    96    68.0    88.0
3    刘吉如    70    53.0    85.0
4    李岩珂    96    70.0    85.0
5    王晓博    46    79.0    85.0
6    李帅旭    97    76.0    79.0
7    李静瑶    92    61.0    89.0
8    金纾凡    83    43.0    80.0
9    秦梓航    86    46.0    57.0
10    关颖利    84    77.0    80.0

  • 关闭连接
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}

Java中使用JDBC的更多相关文章

  1. 第67节:Java中的JDBC运用

    第67节:Java中的JDBC运用 https://www.jianshu.com/p/628a9ba1b205

  2. java中使用jdbc配置连接串时mysql 5.6与5.7版本“编码”参数有区别!

    在mysql5.6中 java程序使用jdbc时链接字符串应该使用?characterEncoding=utf-8,而5.7版本可以省略,否则可能会有相关的语句执行结果出错! String drive ...

  3. java中的JDBC

    Java 是通过 JDBC 技术实现对各种数据库访问的,换句话说,JDBC 充当了 Java 应用程 序与各种不同数据库之间进行对话的媒介. JDBC 是 Java 数据库连接(Java DataBa ...

  4. Java中的JDBC是什么?

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

  5. [数据库操作]Java中的JDBC的使用方法.

    前言:想必大家在实际编码中都遇到过JDBC的操作, 这里仅做自己的一个总结, 有错误和不完整之处还请大家提出来. 1,JDBC其实一套规范(接口)数据库厂商需要实现此接口(实现类)--数据库驱动 2, ...

  6. Java中通过JDBC远程连接Oracle数据库

    通过jdbc连接数据库,拢共分三步: 第一步:下载一个JDBC的驱动,然后把jar包扔到项目里并add to build path: 第二步:去本地oracle文件夹下找到“TNSNAMES.ORA” ...

  7. Java中的JDBC数据库连接

    JDBC编程步骤 1.加载数据库驱动. // 加载驱动 Class.forName(driverClass) // 加载mysql驱动 Class.forName("com.mysql.jd ...

  8. Java中的JDBC基础

    简介 JAVA程序想要对数据库进行访问,需要有JDBC驱动程序的支持.JDBC驱动程序提供了对各种主流数据库的接口,程序员只需要学习掌握这一套接口,就可以实现对所有数据库的访问代码编写. 一般步骤 J ...

  9. java中使用JDBC的preparedStatement批处理数据的添加

    在项目中我们偶尔可能会遇到批量向数据库中导入数据,如果批处理的情况较多的情况下可以使用spring batch,如果只是一个导入功能的话可以考虑使用jdbc的preparedStatement处理. ...

随机推荐

  1. 数据库mark

    LOAD DATA INFILE 'I:\QQpwd\\1.txt' IGNORE INTO TABLE sgk.top1 FIELDS TERMINATED BY '----' OPTIONALLY ...

  2. Android -- ActivityLifeCycleCallbacks

    ActivityLifeCycleCallbacks Application通过此接口提供了一套回调方法,用于让开发者对Activity的生命周期事件进行集中处理. 为什么用ActivityLifec ...

  3. github上最全的资源教程-前端涉及的所有知识体系

    前面分享了前端入门资源汇总,今天分享下前端所有的知识体系. 个人站长对个人综合素质要求还是比较高的,要想打造多拉斯自媒体网站,不花点心血是很难成功的,学习前端是必不可少的一个环节, 当然你不一定要成为 ...

  4. ffmpeg在shell循环中只执行一次问题

    最近写了一个shell脚本,发现 ffmpeg 命令只执行了一次就停了,最后找到原因: ffmpeg有时会读取标准输入流,导致命令出错,解决办法是在ffmpeg命令之后添加 #xxx ffmpeg x ...

  5. 让mysql支持emoji表情

    一.问题及原因 APP产品想对Emoji进行支持,但发现mysql数据库无法写入表情.原因是我们的mysql数据库默认用的是utf8编码,utf8编码存储时用的是三个字节,但Emoji表情是4个字节, ...

  6. iptables规则组成

    一.四张表五条链 组成部分:四张表 + 5条链(Hook point) + 规则 四张表:filter nat mangle raw 五条链:PREROUTING INPUT FORWARD OUTP ...

  7. scrollLeft的相关问题(js横向无缝滚动)

    <div id="demo"> <div id="innerdemo"> <div id="demo1"> ...

  8. C#,JavaScript两种语言 2048小游戏

    <html> <head> <style type="text/css"> .haha { border-width: 2; font-size ...

  9. Hibernate之Annotation(注解的方式,非映射)

    在hibernate 3.0之后,可以建立一个符合JPA标准的Annotation,以hibernate3.3.2GA为例 Annotation 以 hibernate Annotation 3.3. ...

  10. 50-ln 简明笔记

    为文件建立链接 ln [options] existing-file [new-link] ln [options] existing-file-list directory ln可以为一个或多个文件 ...