学习jdbc学习笔记
1.jdbc: java database connection
jdbc规范:是sun公司制定的一套连接操作数据库的接口.
我们必须要用具体的驱动类去连接操作数据库。
每个驱动类都实现了jdbc规范.
规范中掌握三个接口:
Connection: 表示连接对象
Statement: 表示命令对象。执行sql语句用的
ResultSet: 表示结果集.
三种注册驱动的方式
1.创建mysql包中的Driver类。
2.采用反射创建驱动类的对象
3.采用反射加载驱动类
前两种由于注册了两次。同时与具体类耦合性太高,所以不用。实际当中采用第三种
三种获取连接对象的方式:
1.将用户名和密码附加在连接字符串之后
jdbc:mysql://localhost:3306/mydb?user=root&password=root
2.采用创建properties文件的方式
Properties pro = new Properties() ;
pro.load(new FileReader("src/jdbc.properties")) ;
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb",pro) ;
3.采用连接字符串,用户名和密码获取
DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "root") ;
补充:Properties类
此类主要的功能是读取properties文件。properties文件的写法必须是键值对的方式(键=值),参见代码
游标的移动:mysql数据库的结果集默认游标的类型是可移动方式,意味着可以来回移动
rs.next() ; 向下移动一条
rs.beforeFirst() ;移动到第一条记录前边
rs.afterLast();移动到最后一条记录的下边
rs.relative(n) ; 移动到相对于当前位置的n条记录的位置
rs.absolute(n) ; 直接定位到第n条记录
rs.last() ;移动到最后一条记录
获取结果集数据的两种方式:
1.采用列的索引获取 : 注意索引从1开始
2.采用列名获取: 注意是虚拟结果集的列名
封装数据到集合对象中
sql注入的问题:statement对象存在sql注入。因此采用PreparedStatement对象。此
对象是预编译对象,意味着提前先编译好sql语句,因此效率高于statement对象,也防止了sql注入.
CREATE TABLE users
(
id VARCHAR(10) PRIMARY KEY,
NAME VARCHAR(20) ,
PASSWORD VARCHAR(20)
) ;
INSERT INTO users VALUES('1','郭靖','111') ;
INSERT INTO users VALUES('2','令狐冲','222') ;
INSERT INTO users VALUES('3','乔峰','333') ;
学习jdbc学习笔记的更多相关文章
- JDBC学习笔记(2)——Statement和ResultSet
Statement执行更新操作 Statement:Statement 是 Java 执行数据库操作的一个重要方法,用于在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句.Statement ...
- JDBC学习笔记(1)——JDBC概述
JDBC JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据.JDBC代表Java数据库连接. JDBC库中所包含的API任务通常与数据库使用: 连接到数 ...
- 【转】JDBC学习笔记(2)——Statement和ResultSet
转自:http://www.cnblogs.com/ysw-go/ Statement执行更新操作 Statement:Statement 是 Java 执行数据库操作的一个重要方法,用于在已经建立数 ...
- JDBC 学习笔记(十一)—— JDBC 的事务支持
1. 事务 在关系型数据库中,有一个很重要的概念,叫做事务(Transaction).它具有 ACID 四个特性: A(Atomicity):原子性,一个事务是一个不可分割的工作单位,事务中包括的诸操 ...
- JDBC 学习笔记(十)—— 使用 JDBC 搭建一个简易的 ORM 框架
1. 数据映射 当我们获取到 ResultSet 之后,显然这个不是我们想要的数据结构. 数据库中的每一个表,在 Java 代码中,一定会有一个类与之对应,例如: package com.gerrar ...
- JDBC 学习笔记(六)—— PreparedStatement
1. 引入 PreparedStatement PreparedStatement 通过 Connection.createPreparedStatement(String sql) 方法创建,主要用 ...
- JDBC学习笔记二
JDBC学习笔记二 4.execute()方法执行SQL语句 execute几乎可以执行任何SQL语句,当execute执行过SQL语句之后会返回一个布尔类型的值,代表是否返回了ResultSet对象 ...
- JDBC学习笔记一
JDBC学习笔记一 JDBC全称 Java Database Connectivity,即数据库连接,它是一种可以执行SQL语句的Java API. ODBC全称 Open Database Conn ...
- 【转】JDBC学习笔记(1)——JDBC概述
转自:http://www.cnblogs.com/ysw-go/ JDBC JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据.JDBC代表Java数据 ...
随机推荐
- jquery滚动条事件
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...
- [leetcode-623-Add One Row to Tree]
Given the root of a binary tree, then value v and depth d, you need to add a row of nodes with value ...
- 【LeetCode】309. Best Time to Buy and Sell Stock with Cooldown
题目: Say you have an array for which the ith element is the price of a given stock on day i. Design a ...
- 第一个SpringMVC实例和解析(HelloSpringMVC)
1. 开发步骤: (1)增加Spring支持 下载Spring安装包和其依赖的commons-logging.jar,复制到项目Web应用的lib文件夹(WebRoot/WEB-INF/lib): S ...
- jQuery从入门到忘记
jQuery 是一套Javascript脚本库,注意 jQuery 是脚本库,而不是脚本框架."库"不等于"框架".jQuery 并不能帮助我们解决脚本的引用管 ...
- jquery.jqprint-0.3.js打印table表格遇到的坑
在谷歌控制台输入window.print();可以调起当前整个页面的打印预览,那么要想打印页面某块区域内容怎么办呢? 我找到了jqprint插件,其原理是运用iframe 元素创建另外一个文档的内联框 ...
- editPuls 常用知识
1.创建模板 1).创建模板页(*.html) 2).Tools->Preferences->File->Templates->HTML->file name重新选定模板 ...
- Java之面向对象例子(一)
定义一个人类,给这个类定义一个从身份证获取生日的方法,输入身份证,获取出生年月日 //主方法 package com.hanqi.maya.model; import java.util.Scanne ...
- Android - 关于设备版本号
设备信息可以在Settings - About 里看到 最近想改机器的build number,找到了 build/core/Makefile 里的定义 # Display parameters sh ...
- maven - 引用本地jar,进行jar包移动
背景: 项目为maven工程,部分jar需要需用项目单独修改的本地jar包. 配置好scope后发现构建后引用的jar没有移动到对应的目录,百度后发现需要配置以下依赖 <plugin> & ...