JDBC入门案例
什么是JDBC?
JDBC的全称是Java数据库连接(Java Database Connectivity),它是一套用于执行SQL语句的Java API。
作为一个Web开发人员来说,JDBC操作是基本技能中不能再基本的要求了。当我们了解JDBC是如何工作的,就有利于我们了解持久层框架(如现在流行的Hibernate和Mybatis)是如何操作数据库的,而不仅仅只是会用,我们更要懂得这些底层是如何运作的。
JDBC常用的API
1、Driver接口
Driver接口是所有JDBC驱动程序必须实现的接口,该接口专门提供给数据库厂商使用。
2、DriverManager类
DriverManager类用于加载JDBC驱动并且创建与数据库的连接。
3、Connection接口
Connection接口代表Java程序和数据库的连接。
4、Statement接口
Statement接口用于向数据发送SQL语句,但是该Statement容易受到SQL注入攻击,所以我们推荐使用PreparedStatement接口来向数据库发送SQL语句,PreparedStatement会执行预编译的SQL语句,这样就能避免SQL攻击。
5、PreparedStatement接口
PreparedStatement接口是Statement接口的子接口,用于执行预编译的SQL语句。
6、ResultSet接口
ResultSet接口表示select查询语句得到的结果集,该结果集封装在一个逻辑表格中。
案例:【操作mysql数据库】
创建数据库和表:
create database mydb;
use mydb;
create table t_user(
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(40) DEFAULT NULL,
`password` varchar(40) DEFAULT NULL,
`email` varchar(60) DEFAULT NULL,
`birthday` date DEFAULT NULL,
PRIMARY KEY (`id`)
);
所需要的jar:mysql-connector-java-5.0.8-bin.jar
【下载mysql驱动包可以到官网https://dev.mysql.com/downloads/connector/】
Java代码:【在这里只是简单对所使用的资源进行关闭,后面的博文中会给出更加规范的写法】
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// 注册驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取连接
String url = "jdbc:mysql://localhost:3306/mydb";
String user = "root";
String password = "123";
Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement();
String sql = "SELECT id,NAME,PASSWORD,email,birthday FROM t_user";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()) {
System.out.println("==================");
System.out.println(rs.getInt("id"));
System.out.println(rs.getString("NAME"));
System.out.println(rs.getString("PASSWORD"));
System.out.println(rs.getString("email"));
System.out.println(rs.getDate("birthday"));
}
// 回收资源
rs.close();
stmt.close();
conn.close();
}
到这里,基本上就了解了一个简单的JDBC程序如何操作数据库。
JDBC入门案例的更多相关文章
- JAVA企业级开发-jdbc入门(09)
一. jdbc介绍 JDBC全称为:Java DataBase Connectivity(java数据库连接). SUN公司为了简化.统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JD ...
- MyBatis入门案例、增删改查
一.MyBatis入门案例: ①:引入jar包 ②:创建实体类 Dept,并进行封装 ③ 在Src下创建大配置mybatis-config.xml <?xml version="1.0 ...
- Hibernate入门案例及增删改查
一.Hibernate入门案例剖析: ①创建实体类Student 并重写toString方法 public class Student { private Integer sid; private I ...
- MyBatis入门案例 增删改查
一.MyBatis入门案例: ①:引入jar包 ②:创建实体类 Dept,并进行封装 ③ 在Src下创建大配置mybatis-config.xml <?xml version="1.0 ...
- Hibernate入门案例 增删改
一.Hibernate入门案例剖析: ①创建实体类Student 并重写toString方法 public class Student { private Integer sid; private I ...
- Hibernate介绍和入门案例
一身转战三千里,一剑曾当百万师 如果你在之前没有学过SSH三大框架,那么你之前肯定是通过JDBC来对数据库进行操作.现在,你完全可以把跟数据库交互的操作直接交给Hibernate. Hibernate ...
- MyBatis学习(一)简介及入门案例
1.什么是MyBatis? MyBatis是一个支持普通SQL查询,存储过程,和高级映射的优秀持久层框架.MyBatis去掉了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBati ...
- MyBatis学习总结(一)简单入门案例
MyBatis学习总结(一)简单入门案例 主要内容:本文主要通过对数据库中的use表进行增删改查总结mybatis的环境搭建和基本入门使用 一.需要的jar包: 1.核心包 2.依赖包 3.jdbc数 ...
- 一起学习Hibernate: Hibernate01 —— Hibernate的概述与入门案例
一 Hibernate的介绍 1 让我们从JDBC与替代它的框架Hibernate进行一下对比. 1.1 JDBC的缺点 1) 代码结构繁琐.每次书写sql语句操作数据库都得需要很多步; 2) 是面向 ...
随机推荐
- Charles抓包(http/https请求)
Charles安装 HTTP抓包 HTTPS抓包 1. Charles安装官网下载安装Charles:https://www.charlesproxy.com/download/当然由于国情可以使用破 ...
- [原创]mysql 5.6安装配置,主从分离,读写分离简单教程
文章中参考使用了多个博客的资料,汇总而成!其流程准确性被人亦本人实践! https://blog.csdn.net/qq_35206261/article/details/81321201 https ...
- STL与泛型编程-练习2-GeekBand
练习题目: struct Programmer{ Programmer(const int id, const std::wstring name): Id(id), Name(name){ } vo ...
- ORA-01790: 表达式必须具有与对应表达式相同的数据类型
出现这种错误,要先看一下是不是sql中有用到连接:union,unio all之类的,如果有,需要注意相同名称字段的数据类型一定要相同.
- Python快速搭建HTTP服务器
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style=&q ...
- day51作业
利用无名有名分组加反向解析完成用户数据的编辑和删除功能 目录结构 day51: app01 day51 static templates manage.py 功能截图 代码实现 day51/urls. ...
- vue.js_01_vue.js的入门
1.什么是Vue.js Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于 ...
- md5密码入库
<?php //连接数据库 $pdo = new PDO('mysql:host=localhost;dbname=md5;charset=UTF8', 'root', ''); # 设置为fa ...
- CentOS 6.5 FTP安装配置
安装配置 rpm -q vsftpd #检查是否安装了FTP yum -y install vsftpd #安装FTP chkconfig vsftpd on #设置开机启动 service vsft ...
- [转载] OpenCV2.4.3 CheatSheet学习(四)
五.数据的输入和输出 1. 将数据写入YAML(或XML) 注意,在OpenCV中,无论读写,文件的格式均由指定的后缀名确定.示例: FileStorage fs("test.yml&quo ...