Java 第27章 JDBC
JDBC 模版
JDBC 的工作原理
JDBC API
提供者:Sun公司
内容:供程序员调用的接口与类,集成在java.sql 和javax.sql 包中,如:
DriverManager 类
Connection 接口
PreparedStatement 接口
ResultSet 接口
DriverManager
提供者:Sun公司
作用:管理各种不同的JDBC 驱动
JDBC 驱动
提供者:数据库厂商
作用:负责连接各种不同的数据库
java 应用程序
JDBC API
JDBC Driver Manager
JDBC 驱动 --->sql server JDBC 驱动 ----> oracle
JDBC API
JDBC API 主要功能:与数据库建立连接、执行SQL 语句、处理结果
1、DriverManager
2、Connection
3、Statement
4、ResultSet ---> 4个步骤 !
DriverManager :依据数据库的不同,管理JDBC驱动
Connection :负责连接数据库并担任传送数据的任务
PreparedStatement:由 Connection 产生、负责执行SQL语句
ResultSet:负责保存Statement执行后所产生的查询结果
try {
class.forName( JDBC 驱动类);
1、加载JDBC 驱动
Class. forName("com.mysql.jdbc.Driver");
2、与数据库建立连接
connection con=DriverManager.getConnection(URL,数据库用户名,密码);
//URL 用来标识数据库
PreparedStatement pstmt=con.PreparedStatement("查询sql语句");
ResultSet rs=pstmt.executeQuery();
//执行SQL语句,并得到返回结果
while (rs.next()){
int x=rs.getint("a");
String s=rs.getString("b");
float f=rs.getFloat("c");
// 处理放回结果
}
rs.close();
pstmt.close();
con.close(); //关闭连接
//释放资源
}
package com.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Scanner;
public class Test1 {
/**
* @param args
*/
public static void main(String[] args) {
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rst=null;
try {
//1、加载驱动
Class.forName("com.mysql.jdbc.Driver");
//2、建立连接
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/nyschool?CharacterEncoding=UTF-8","root","root");
//System.out.println("建立连接成功!!");
//3、创建 prepareStatement 接口并编译 sql语句
//pstmt=conn.prepareStatement("select * from student");
//执行删除
Scanner input=new Scanner(System.in);
//System.out.print("请输入要删除的学生学号:");
//int stuNo=input.nextInt();
//两种方法:
//方法1:String sql="DELETE FROM student WHERE stuNo="+stuNo;
//方法2:String sql="DELETE FROM student WHERE stuNo=7";
//执行添加
System.out.print("请输入添加的学员的编号:");
int stuNo=input.nextInt();
System.out.print("请输入添加学员的性别:");
String name=input.next();
System.out.print("请输入添加的地址:");
String phone=input.next();
//
String sql="INSERT INTO student VALUES (?,'a2323','qq',?,1,?,'江西南昌',SYSDATE(),'qq.com')";
pstmt=conn.prepareStatement(sql); //预编译方式
//给占位符赋值
pstmt.setInt(1, stuNo);
pstmt.setString(2, name);
pstmt.setString(3, phone);
System.out.print("sql:"+sql);
//4、执行SQL语句,并得到返回结果
//rst=pstmt.executeQuery(); //执行查询
int num=pstmt.executeUpdate(); //执行增删改
//5、处理返回结果
if(num>0){
System.out.println("\n添加成功!");
}else{
System.out.println("\n添加失败!");
}
while (rs.next()){
int x=rs.getint("a");
String s=rs.getString("b");
float f=rs.getFloat("c");
// 处理放回结果
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Java 第27章 JDBC的更多相关文章
- Java开发工程师(Web方向) - 03.数据库开发 - 第1章.JDBC
第1章--JDBC JDBC基础 通过Java Database Connectivity可以实现Java程序对后端数据库的访问 一个完整的数据库部署架构,通常是由客户端和服务器端两部分组成 客户端封 ...
- JAVA / MySql 编程——第七章 JDBC
1.JDBC:JDBA是Java数据库连接(Java DataBase Connectivity)技术的简称,提供连接各种常用数据库的能力: ●Java是通过JDBC技术实现对各种数据 ...
- Java面向对象笔记 • 【第9章 JDBC编程】
全部章节 >>>> 本章目录 9.1 JDBC基础 9.1.1 JDBC简介 9.1.2 JDBC常用API简介 JDBC 常用API功能说明 9.1.3 JDBC编程步骤 ...
- Java中的事务——JDBC事务和JTA事务
Java中的事务——JDBC事务和JTA事务 转载:http://www.hollischuang.com/archives/1658 之前的事务介绍基本都是数据库层面的事务,本文来介绍一下J2EE中 ...
- 第六章 JDBC
第一章 JDBC 一.JDBC的简介 1.什么是JDBC JDBC是java数据库连接(java database connectivity)技术的简称,它充当了java应用程序与各个不同数据库之间进 ...
- Java基础-面向接口编程-JDBC详解
Java基础-面向接口编程-JDBC详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.JDBC概念和数据库驱动程序 JDBC(Java Data Base Connectiv ...
- Java应用程序连接数据库--JDBC基础
Java应用程序连接数据库--JDBC基础 Java应用程序连接数据库–JDBC基础 <!-- MySQL驱动,连接数据库用,由数据库厂商提供 --> <dependency&g ...
- java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 错误的解决办法
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 错误的解决办法 (2011-05-05 16:08:05) 转载▼ ...
- 【ASP.NET MVC 5】第27章 Web API与单页应用程序
注:<精通ASP.NET MVC 3框架>受到了出版社和广大读者的充分肯定,这让本人深感欣慰.目前该书的第4版不日即将出版,现在又已开始第5版的翻译,这里先贴出该书的最后一章译稿,仅供大家 ...
随机推荐
- mssql2000 身份证号码验证
CREATE VIEW thisDate --返回当前日期,因为自定义函数中不能使用GETDATE() AS ),) AS aDate )) /*mssql2000 返回值=0,身份证校验正确 1:位 ...
- Netty
首先值得注意的是netty的jar包版本问题,版本不同,运用的方式也不同.我这里用4.0版本. 对于小白来说,netty到底是什么,我就没必要在这里阐明了,因为百度上比我描述的更全面. 这里就直接开门 ...
- 运行Java cmd程序 找不到或无法加载主类怎么解决
//这个问题原因有以下几种,但是和环境变量并没有太大的关系 //能够执行java 和 javac 就证明你的环境变量已经配置好了,其实 classpath 可以不配置 //假如有如下文件:H:\cod ...
- AndroidStudio导入项目一直卡在Building gradle project info最快速解决方案
AndroidStudio导入项目一直卡在Building gradle project info,实际上是因为你导入的这个项目使用的gradle与你已经拥有的gradle版本不一致,导致需要下载该项 ...
- swift 之 闭包
一.闭包 格式:{ ( 参数名:类型, 参数名:类型 .. ) in 内容体 return 返回值 } 最完整的闭包 1.省略参数类型 { ( 参数名, 参数名.. ) ...
- AJAX请求 $.post方法的使用
使用jQuery的$.post方法可以以POST形式向服务器发起AJAX请求.$.post方法是jQuery的实用工具方法. $.post方法语法 $.post(url,parameters,call ...
- [转]Oracle 经验集
-- 转换字符串为日期格式 to_date('2011-12-30 11:54:30','yyyy-MM-dd:hh24:mi:ss') Oracel 用 C# 连接,Microsoft 自带的 Sy ...
- java验证码刷新
可以使用a标签,这样省事 <img id="code_img" src="validcode" alt="登录验证码" /> & ...
- spark2.0配置
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- Hishop网站迁移后出现DataProtectionConfigurationProvider错误
错误代码如下: 配置错误 说明: 在处理向该请求提供服务所需的配置文件时出错.请检查下面的特定错误详细信息并适当地修改配置文件. 分析器错误信息: 未能使用提供程序“DataProtectionCon ...