java之连接数据库之JDBC访问数据库的基本操作
1.将数据库的JDBC驱动加载到classpath中,在基于JavaEE的web应用实际开发过程中通常要把目标数据库产品的JDBC驱动复制到WEB—INF/lib下。
2.加载JDBC驱动并将其注册到DriverManager中。
Oracle数据库
Class.forName("oracle.jdbc.driver.oracleDriver");
SQL数据库
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
3.建立数据库连接,取得Connection对象。
SQL 数据库
String url="jdbc:sqlserve://localhost:1433;databaseName=LiZanQi";
String user="sa";
String password="sa";
Connection conn=DriverManager.getConnection(url,user,password);
4.建立Statement对象 或PerparedStatement对象
Statement statement=conn.createStatement();
PreparedStatement pstatement=conn.prepareStatement(所要执行的sql语句);
pstatement.setString(第一个占位符, 占位符的内容);
pstatement.setString(第二个占位符, 占位符的内容);
利用PreparedStatement可以避免数据库的注入攻击!
5.执行SQL语句
String Sql="select * from 表名";
ResultSet rs=statement.executeQuery(Sql);或者ResultSet rs=pstatement.executeQuery();
执行查询语句是用executeQuery();
但是在执行“插入”,“更新”“删除”语句时就需要用executeUpdate();方法了
6.访问结果记录集ResultSet对象
一般用while循环
while(rs.next()){
依次读取结果。
}
7.依次将ResultSet对象,Statement对象或PerparedStatement对象Connection对象关闭释放所占用的资源
rs.close();
statement.close();或者pstatement.close();
conn.close();
8.总结
PreparedStatement:
1.提高了安全性可以防止注入攻击
2.提高了数据库语句的执行性能。
3.提高了代码的可读性和可维护性。
其中PreparedStatement接口继承自Statement接口
JDBC API做了哪三件事:
1.与数据库建立连接。
2.执行数据库的语句。
3.处理结果。
DriverManager类:依据数据库的不同,管理JDBC驱动。
Connection接口:负责连接数据库并担任传送数据的任务。
statement接口:由Connection对象创建,负责执行数据库语句。
ResultSet 接口:负责保存Statement对象执行后所产生的查询结果。
除了executeQuery方法和executeUpdate方法之外还有execute方法可以执行可以执行所有的语句,当获得true时表示返回了一个ResultSet结果集。
方法:
next() :将光标从当前位置向下移动一行。
previous():游标从当前位置向上移动一行。
void close():关闭当前对象。
int getInt(int colIndex)获取指定列号的当前行。
int getInt(String colIndex)获取指定列名的当前行。
String getString(String colLabel)获取结果集当前行指定列名值。
java之连接数据库之JDBC访问数据库的基本操作的更多相关文章
- java web中Jdbc访问数据库步骤通俗解释(吃饭),与MVC的通俗解释(做饭)
一.Jdbc访问数据库步骤通俗解释(吃饭) 1)加载驱动 Class.forName(“com.microsoft.jdbc.sqlserver.SQLServer”); 2) 与数据库建立连接 Co ...
- 如何通过JDBC访问数据库
Java数据库连接(JDBC)用与在Java程序中实现数据库操作功能,它提供了执行SQL语句.访问各种数据库的方法,并为各种不同的数据库提供统一的操作接口,java.sql包中包含了JDBC操作数据库 ...
- Jdbc访问数据库篇
一万年太久,只争朝夕 What JDBC 上部 JDBC(Java DataBase Connectivity)Java 数据库连接,主要提供编写 Java 数据库应用程序的 API 支持 java. ...
- 2017.10.3 JDBC访问数据库的建立过程
1·JDBC访问数据库,其访问流程: (1)注册驱动 (2)建立连接(Connection) (3)创建数据库操作对象用于执行SQL语句 (4)执行语句 (5)处理执行结果 (6)释放资源 2·注册驱 ...
- JDBC访问数据库的具体步骤(MySql + Oracle + SQLServer)
* 感谢DT课堂颜群老师的视频讲解(讲的十分仔细,文末有视频链接) import java.sql.Connection; import java.sql.DriverManager; import ...
- Java基础之原生JDBC操作数据库
前言 日常开发中,我们都习惯了使用ORM框架来帮我们操作数据库,本文复习.记录Java如何使用原生JDBC操作数据库 代码编写 封装几个简单方法 find查询方法 findOne查询方法 update ...
- Spring实战6:利用Spring和JDBC访问数据库
主要内容 定义Spring的数据访问支持 配置数据库资源 使用Spring提供的JDBC模板 写在前面:经过上一篇文章的学习,我们掌握了如何写web应用的控制器层,不过由于只定义了SpitterRep ...
- 【jdbc访问数据库获取执行sql转换json】
Talk is cheap.Show me your code. import java.sql.*; import java.util.HashMap; import java.util.Map; ...
- javaweb三、JDBC访问数据库
JDBC是J2SE的内容,是由java提供的访问数据库的接口,但没有提供具体的实现方法,需要数据库厂商提供,就是对应的数据库驱动. 这样的好处是可以方便的更换数据库,提高了扩展性.这也是面向接口编程的 ...
随机推荐
- nginx学习与使用
安装与运行 (从源码安装,这里OS为Ubuntu,参考资料:https://nginx.org/en/docs/configure.html) 1.下载并解压:https://nginx.org/en ...
- iOS 定时器 NSTimer、CADisplayLink、GCD3种方式的实现
在软件开发过程中,我们常常需要在某个时间后执行某个方法,或者是按照某个周期一直执行某个方法.在这个时候,我们就需要用到定时器. 然而,在iOS中有很多方法完成以上的任务,到底有多少种方法呢?经过查阅资 ...
- macOS 10.13 High Sierra odoo11 开发配置--完整版
1.抹盘安装macOS Sierra 10.13: 制作macOS安装启动盘参见:http://www.iplaysoft.com/macos-usb-install-drive.html 2.安装g ...
- 查看spark RDD 各分区内容
mapPartitionsWithIndexdef mapPartitionsWithIndex[U](f: (Int, Iterator[T]) => Iterator[U], preserv ...
- [原]Django-issue(1)---postgresql数据库连接密码错误
环境: Django==1.9.13 psycopg2==2.7.5 Python 3.6.5 postgresql 1.18.1 配置django的时候出现问题 检查setting,问题点:由于安装 ...
- LDA总结 (一) 共轭分布
今天开始,复习一下 LDA ,记录一些 LDA 的关键步骤,为写好论文做铺垫.第一节的主题是共轭分布,回忆贝叶斯公式: \[p(\theta|X) = \frac{p(\theta) \cdot p( ...
- hive reduce 阶段GC Exception
某个reduce中的value堆积的对象过多,导致jvm频繁GC. 解决办法: 1. 增加reduce个数,set mapred.reduce.tasks=300,. 2. 在hive-site.xm ...
- 个人小爱好:Operating System: three easy pieces—第6章第3小节问题2#进程间的切换
问题2#:进程间的切换 直接执行的下一个问题是如何实现进程的切换.进程的切换按理说是挺简单的,对吧?不就是决定哪一个进程应该停止,哪一进程应该开始而已,才多大点事情啊?但,事实上这还真的有点棘手:尤其 ...
- Java Filter(拦截器)
多个Filter按照在配置文件中配置的filter顺序执行. 在web.xml文件中配置该Filter,使用init-param元素为该Filter配置参数,init-param可接受如下两个子元素: ...
- day4_局部变量和全局变量
一.介绍: 定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域. 局部变量意思就是在局部生效的,出了这个变量的作用域,这个变量就失效了 全局变量的意思就是在整个程序里面都生效的,在程 ...