package test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;

public class JDBCCon {

/**
* @param args
* @throws SQLException
*/
public static void main(String[] args) {
// 数据库连接地址,字符编码一般设置UTF-8根据实际情况而定
String url = "jdbc:mysql://127.0.0.1:3306/bdpf?useUnicode=true&characterEncoding=utf-8";
// 创建数据库连接
Connection conn = null;
// 创建一个Statement实例
Statement st = null;
// 结果集
ResultSet rs = null;
// 数据库用户名
final String userName = "root";
// 数据库密码
final String password = "root";
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 根据地址、用户名、密码获取数据库连接
conn = DriverManager.getConnection(url,userName,password);
// 创建以个Statement
st = conn.createStatement();
// 执行查询语句
rs = st.executeQuery("select * from tbl_base_info");
// 获取查询结果数据,循环打印出列名
ResultSetMetaData rmd = rs.getMetaData();
for (int index = 1;index<rmd.getColumnCount()+1;index++) {
System.out.println(rmd.getColumnName(index));
}
} catch (Exception e) {
// TODO Auto-generated catch block

e.printStackTrace();
} finally{
try {
// 如果结果集实例不为空最后要关闭
if(rs!=null){
rs.close();
}
// 如果Statement实例不为空最后要关闭
if(st!=null){
st.close();
}
// 如果数据库连接仍然存在最后要关闭
if(st!=null){
conn.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}

/*知识点扩展:
1.本人是以mysql最为例子写的代码需要引入mysql的jar包

2.String url = "jdbc:mysql://127.0.0.1:3306/bdpf?useUnicode=true&characterEncoding=utf-8";
useUnicode=true 说明要使用Unicode编码,如果要指定characterEncoding 那么useUnicode值必须为true

3.Statement 有三种执行sql语句的方法
executeQuery 、executeUpdate 和 execute
其中executeQuery执行查询语句,返回结果集
executeUpdate,执行INSERT,DELETE,UPDATE等语句,返回值是受影响的行数
execute 用于执行返回多个结果集、多个更新计数或二者组合的 sql语句,方法返回值为boolean
示例:
ResultSet rs = stmt.executeQuery("select * from ...") ;
int rows = stmt.executeUpdate("update tableName ...") ;
boolean flag = stmt.execute(String sql) ;

4.要关闭JDBC对象
结果集
声明
和连接
创建时的顺序为 连接、声明、结果集
关闭时的顺序为 结果集 、声明、连接
关闭的最佳时机应该为finally代码内
以保证在try过程中抛出异常,最后finally内的代码仍能执行,避免连接消耗
*/

JDBC代码示例的更多相关文章

  1. RAC集群数据库连库代码示例(jdbc thin方式,非oci)

    1.RAC集群数据库连库代码示例(jdbc thin方式,非oci):jdbc.driverClassName=oracle.jdbc.driver.OracleDriverjdbc.url=jdbc ...

  2. JDBC + MySQL 示例

    jdbc mysql connection 教程 翻译自:JDBC MySQL Connection Tutorial Java Database Connectivity (JDBC) 是一个基于J ...

  3. 一、JDBC基础示例

    一.简介 JDBC全称叫做Java database connectivity,直译为Java语言的数据库连接.它主要针对于支持结构化查询语言(SQL)的数据源,与Java程序连接并操作数据. JDB ...

  4. 怎样在本地电脑上连接另外一台电脑上的mysql数据?(代码示例)

    基本上有两种方式: 1,使用MYSQL的管理工具,可以远程连接,比如用导航猫系列的,只要知道对方IP,然后就可以自己输入账号密码连接了. 2,使用代码连接. Java代码示例: package com ...

  5. 高级渲染技巧和代码示例 GPU Pro 7

    下载代码示例 移动设备正呈现着像素越来越高,屏幕尺寸越来越小的发展趋势. 由于像素着色的能耗非常大,因此 DPI 的增加以及移动设备固有的功耗受限环境为降低像素着色成本带来了巨大的压力. MSAA 有 ...

  6. Java8-Function使用及Groovy闭包的代码示例

    导航 定位 概述 代码示例 Java-Function Groovy闭包 定位 本文适用于想要了解Java8 Function接口编程及闭包表达式的筒鞋. 概述 在实际开发中,常常遇到使用模板模式的场 ...

  7. [IOS 开发] 懒加载 (延迟加载) 的基本方式,好处,代码示例

    懒加载的好处: 1> 不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强 2> 每个属性的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合 ...

  8. SELECT控件操作的JS代码示例

    SELECT控件操作的JS代码示例 1 检测是否有选中 if(objSelect.selectedIndex > -1) { //说明选中 } else { //说明没有选中 } 2.动态创建s ...

  9. 转:HIBERNATE一些_方法_@注解_代码示例---写的非常好

    HIBERNATE一些_方法_@注解_代码示例操作数据库7步骤 : 1 创建一个SessionFactory对象 2 创建Session对象 3 开启事务Transaction : hibernate ...

随机推荐

  1. ajax 和 post 传多个参数值具体怎么写

    ajax data:{id:id,name:name} 正确 data:{id:"001",name:"王俊凯"} 正确 data:{"id" ...

  2. led灯的翻转函数

    定义: uint8_t led1_val; void LED1(uint8_t* val){ *val =!(*val); if( *val == 0x00 ) HAL_GPIO_WritePin ( ...

  3. 真核转录组(denovo/resequencing)及案例分析

    参考: 转录组文章的常规套路 文章解读:<Science>小麦转录组研究文章 转录组数据饱和度评估方法 Paper这个东西是多么的诱人,可以毕业,可以评职称,可以拿绩效. 现在的文章都是有 ...

  4. IO流中SequenceInputStream类

    SequenceInputStream类: 不断的读取InputStream流对象,对于使用Enumeration对象的情况,该类将持续读取所有InputStream对象中的内容,直到到达最后一个In ...

  5. httpd服务的安装、配置和关于php留言本网站的搭建

    搭建本地yum仓库的方法 http://www.cnblogs.com/lql123/p/5952788.html yum install httpd -y #安装httpd yum install ...

  6. Redis常用命令入门3:列表类型

    列表类型 列表类型也是一个我们很长要用到的一个类型.比如我们发博客,要用到博客列表.如果没有列表我们就只能遍历键来获取所有文章或一部分文章了,这个语法是keys,但是这个命令需要遍历数据库中的所有键, ...

  7. 利用ajax向jsp传输数据

    ajax代码 var obtn=document.getElementsByTagName('input')[0]; obtn.onclick=function () { var xhr=null; ...

  8. python安装supervisor

    1.下载supervisor-3.3.1.tar.gz    http://pan.baidu.com/s/1dEPhGEd 2.下载meld3-1.0.2.tar.gz   http://pan.b ...

  9. Solr环境搭建过程中遇到的问题

    Solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/6.3.0 Solr搭建步骤转自:http://blog.csdn.net/wbcg ...

  10. MySQL 性能优化 30个数据库设计的最佳实践

    数据库设计是整个程序的重点之一,为了支持相关程序运行,最佳的数据库设计往往不可能一蹴而就,只能反复探寻并逐步求精,这是一个复杂的过程,也是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程. ...