【Java】JDBC编程套路
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5847020.html
学习Java开发,一个必须掌握的知识点,就是数据库操作。当程序需要用到的数据达到一定程度时,就不能简单地用本地文件来储存了,而是借助数据库。
目前,用的最多的数据库有MySql,Oracle等,Java编程中连接、使用不同数据库的操作都是大同小异的,这里以MySql数据库为例。
JDBC编程其实不难,有一个固定的使用套路:
1) 加载 Driver 驱动:Class.forName("com.mysql.jdbc.Driver");
2) 创建数据库连接对象,登录到数据库: Connection conn=DriverManager.getConnection("jdbc:mysql://...(地址,端口),"数据库用户名","数据库密码");
3) 创建一个可向数据库发送 SQL 命令并返回结果的传送对象:Statement statement=conn.createStatement();
4) 创建SQL命令并执行:String sql="sql命令语句"; statement.executeUpdate(sql);resultset=statement.executeQuery(sql);
5) 如果是执行查询类命令,会有结果集返回,处理结果集获取每一条记录的具体属性的具体数据:
while(resultset.next()){int/double/String a=resultset.getInt/Double/String("属性名");}
注意:结果集是一个表,第一行是属性名,第二行开始才是具体的数据,所以首先要通过resultset.next()把游标移动到第二行,看有没有数据,有则进行提取。
6)关闭结果集:resultset.close();
7) 关闭对应的 Statement 对象:statement.close();
8) 关闭连接对象 Connection:conn.close();
应用到代码实例:
public String doLogin(String code_input,int password_input)
{
Connection conn=null;
Statement stmt=null;
ResultSet rs=null; try{
Class.forName("com.mysql.jdbc.Driver"); conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/bank","root","123456");
stmt=conn.createStatement(); String sql="select * from account where code = '"+code_input+"' and password = "+password_input;
rs=stmt.executeQuery(sql); if(rs.next())
{
return code_input;
}else{
return "-1";
} }catch(Exception ex)
{
ex.printStackTrace();
return "-1";
}finally
{
if(rs!=null)
{
try{
rs.close();
}catch(Exception ex)
{
ex.printStackTrace();
}
}
if(stmt!=null)
{
try{
stmt.close();
}catch(Exception ex)
{
ex.printStackTrace();
}
}
if(conn!=null)
{
try{
conn.close();
}catch(Exception ex)
{
ex.printStackTrace();
}
}
} }
【Java】JDBC编程套路的更多相关文章
- Java JDBC编程套路教程
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5847020.html 学习Java开发,一个必须掌握的知识点,就是数据库操作.当程序需要用到的数据达到一定程 ...
- 小菜鸟之java JDBC编程
JDBC技术 百度简介 : JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一 ...
- java JDBC编程流程步骤
JDBC:Java Data Base Connection JDBC是用于运行sql语句并从数据库中获取新新的java API. JDBC是用来(让我们的程序)通过网络来操作数据库的,作用非常重要: ...
- Java JDBC下执行SQL的不同方式、参数化预编译防御
相关学习资料 http://zh.wikipedia.org/wiki/Java数据库连接 http://lavasoft.blog.51cto.com/62575/20588 http://blog ...
- JAVA基础知识之JDBC——编程步骤及执行SQL
JDBC编程步骤 下面以mysql数据库为例, 1.加载驱动 首先需要下载数据库的驱动jar文件,并且在eclipse包中加入到class path中去, 例如mysql的驱动文件 mysql-con ...
- Java JDBC数据库编程
课程 Java面向对象程序设计 一.实验目的 掌握数据库编程技术 二.实验环境 1.微型计算机一台 2.WINDOWS操作系统,Java SDK,Eclipse开发环境,Microsoft SQL ...
- Java基础教程:JDBC编程
Java基础教程:JDBC编程 1.什么是JDBC JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库. JDBC A ...
- 菜鸡的Java笔记 java数据库编程(JDBC)
java数据库编程(JDBC) 介绍 JDBC 的基本功能 content (内容) 现在几乎所有的项目开发过程之中都不可能离开数据库,所以在java ...
- Java面向对象笔记 • 【第9章 JDBC编程】
全部章节 >>>> 本章目录 9.1 JDBC基础 9.1.1 JDBC简介 9.1.2 JDBC常用API简介 JDBC 常用API功能说明 9.1.3 JDBC编程步骤 ...
随机推荐
- linux C 数组操作
/****************************************************************** * linux C 数组操作 * 声明: * 本文为解决陈颖奇遇 ...
- busybox filesystem add ldd function
/******************************************************************** * busybox filesystem add ldd f ...
- 最简单的视音频播放示例5:OpenGL播放RGB/YUV
本文记录OpenGL播放视频的技术.OpenGL是一个和Direct3D同一层面的技术.相比于Direct3D,OpenGL具有跨平台的优势.尽管在游戏领域,DirectX的影响力已渐渐超越OpenG ...
- ActionBarSherlock的学习笔记(三) ------------ ActionBarSherlock中的overflow及item的点击事件
定义一个自定义的ActionBar的title,并添加一个overflow的Action Item. 代码实现 如下 : import android.os.Bundle; import and ...
- <四>面向对象分析之UML核心元素之用例
一:基本概念 --->用例定义了一组用例实例,其中每个实例都是系统所执行一系列操作,这些操作生成特定主角可以观测的值. --->所谓用例,就是一件事情,要完成这 ...
- 【已解决】Android ADT中增大AVD内存后无法启动:emulator failed to allocate memory 8
[问题] 折腾: [已解决]Android ADT中增大AVD内存后无法启动:emulator failed to allocate memory 8 过程中,增大对应AVD的内存为2G后,结果无法启 ...
- hdu 1024(最大和连续子序列增强版)
题意:最大和连续子序列的增强版,要求从一序列中取出若干段,这些段之间不能交叉,使得和最大并输出. 分析:用dp[i][j]表示前j个数取出i段得到的最大值,那么状态转移方程为dp[i][j]=max( ...
- C# 邮件发送系统
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- FOJ 1962 新击鼓传花游戏 线段树
维护一个sum数组,有点划分树的思想,写过划分树的应该能看出来 #include<cstdio> #include<algorithm> #include<iostrea ...
- Front-End-Develop-Guide
这份文件包含一系列用于面试审查求职者(候选人)的前端面试问题.这并不推荐把每个问题都问在同一个求职者(因为这会花几个小时的时间).从列表中抽取一些问题能够帮助你审查你需要求职者具备的一些技能. 注: ...