JDBC连接MySQL 方法 实例及资料收集

准备工作

  首先,安装MySQL,配置用户名和密码,创建数据库。

  可参见之前的文章:

  http://www.cnblogs.com/mengdd/p/3154638.html

  http://www.cnblogs.com/mengdd/p/3154922.html

准备驱动包

  要用JDBC连接MySQL,需要一个驱动包:

  可以去这里下载(其实完整安装MySQL后可以在安装路径中找到这个包):

  http://www.mysql.com/products/connector/

  解压后将其中的mysql-connector-java-XXX-bin.jar文件加入到Web Project的lib中:

JDBC代码编写

  首先,需要加载驱动:

// 加载驱动
Class.forName("com.mysql.jdbc.Driver");

  然后,建立连接:

String dbUrl = "jdbc:mysql://localhost:3306/mydatabase1";
String dbUser = "your_username";
String dbPwd = "your_password";
// 打开数据库连接
con = DriverManager.getConnection(dbUrl, dbUser, dbPwd);

  

  注意其中的端口号和数据库名(mydatabase1)可能需要修改。

  JDBC连接不同数据库:

  

  之后就可以执行SQL语句了。

  最后要记得关闭资源。

实践程序

  完整Helper类代码(感谢ZJL同学无私奉献悉心指导):

package com.meng.utils;

import java.sql.*;

public class JDBCHelper
{
private Connection con = null;
private PreparedStatement stmt = null;
private ResultSet rs = null; public JDBCHelper()
{ try
{
// 加载驱动
Class.forName("com.mysql.jdbc.Driver");
String dbUrl = "jdbc:mysql://localhost:3306/mydatabase1";
String dbUser = "mengdd";
String dbPwd = "881103";
// 打开数据库连接
con = DriverManager.getConnection(dbUrl, dbUser, dbPwd); }
catch (ClassNotFoundException e)
{
System.out.println("Error: unable to load driver class!");
System.out
.println("please check if you hava the mysql-connector jar file in your lib dir!");
e.printStackTrace();
}
catch (SQLException e)
{
e.printStackTrace();
} } public ResultSet executeResultSet(String sql)
{
return executeResultSet(sql, null);
} public ResultSet executeResultSet(String sql, Object[] params)
{
try
{
// 创建一个JDBC声明
stmt = con.prepareStatement(sql);
if (null != params && params.length != 0)
{
for (int i = 0; i < params.length; i++)
{
stmt.setObject(i + 1, params[i]);
}
}
rs = stmt.executeQuery();
return rs;
}
catch (Exception ex)
{
throw new RuntimeException(ex.getMessage(), ex);
}
} public int executeUpdate(String sql)
{
return executeUpdate(sql, null);
} public int executeUpdate(String sql, Object[] params)
{
try
{
// 创建一个JDBC声明
stmt = con.prepareStatement(sql);
if (null != params && params.length != 0)
{
for (int i = 0; i < params.length; i++)
{
stmt.setObject(i + 1, params[i]);
}
}
return stmt.executeUpdate();
}
catch (Exception ex)
{
throw new RuntimeException(ex.getMessage(), ex);
}
} public void close()
{
try
{
// 应该明确地关闭所有的数据库资源
if (null != rs)
rs.close();
if (null != stmt)
stmt.close();
if (null != con)
con.close(); }
catch (SQLException e)
{
throw new RuntimeException(e);
} }
}

  测试代码:

package com.meng.test;

import java.sql.ResultSet;
import java.sql.SQLException; import com.meng.utils.JDBCHelper; public class Test
{
public static void main(String[] args)
{
JDBCHelper dbHelper = new JDBCHelper(); ResultSet resultSet = dbHelper.executeResultSet("SELECT * FROM pet;"); try
{
while (resultSet.next())
{
System.out.println("-------------");
System.out.println("name: " + resultSet.getString("name"));
System.out.println("birth: " + resultSet.getString("birth")); }
}
catch (SQLException e)
{
e.printStackTrace();
}
finally
{
dbHelper.close();
} } }

  结果:

-------------
name: Tutu
birth: 2013-03-01
-------------
name: Whistler
birth: 1997-12-09
-------------
name: WangWang
birth: 2008-09-30
-------------
name: MiaoMiao
birth: 2012-01-01

参考资料

  官方文档:

  Java SE Technologies – Database

  http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136101.html

  JDBC Overview

  http://www.oracle.com/technetwork/java/overview-141217.html

  JDBC API

  http://docs.oracle.com/javase/7/docs/technotes/guides/jdbc/

  Tutorial JDBC basic

  http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html

  Getting Started:

  http://docs.oracle.com/javase/1.4.2/docs/guide/jdbc/getstart/GettingStartedTOC.fm.html

  The JDBC classes are contained in the Java package java.sql and javax.sql

  JDBC教程:

  http://www.yiibai.com/jdbc/jdbc-db-connections.html

JDBC连接MySQL 方法 实例及资料收集的更多相关文章

  1. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  2. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  3. JDBC连接MySQL数据库及示例

      JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一 ...

  4. 修改sqlarchemy源码使其支持jdbc连接mysql

    注意:本文不会将所有完整源码贴出,只是将具体的思路以及部分源码贴出,需要感兴趣的读者自己实验然后实现吆. 缘起 公司最近的项目需要将之前的部分业务的数据库连接方式改为jdbc,但由于之前的项目都使用s ...

  5. Java编程学习之JDBC连接MySQL

    JDBC连接MySQL 一.对JDBC连接数据库的步骤1.加载数据库驱动//加载驱动Class.forName(driverClass)-------------------------------- ...

  6. ava基础MySQL存储过程 Java基础 JDBC连接MySQL数据库

    1.MySQL存储过程   1.1.什么是存储过程 带有逻辑的sql语句:带有流程控制语句(if  while)等等 的sql语句   1.2.存储过程的特点 1)执行效率非常快,存储过程是数据库的服 ...

  7. JAVA使用jdbc连接MYSQL简单示例

    以下展示的为JAVA使用jdbc连接MYSQL简单示例: import java.sql.DriverManager; import java.sql.ResultSet; import java.s ...

  8. java jdbc 连接mysql 数据库

    JDBC连接MySQL 加载及注册JDBC驱动程序 Class.forName("com.mysql.jdbc.Driver"); Class.forName("com. ...

  9. java用JDBC连接MySQL数据库的详细知识点

    想实现java用JDBC连接MySQL数据库.需要有几个准备工作: 1.下载Connector/J的库文件,下载Connector/J的官网地址:http://www.mysql.com/downlo ...

随机推荐

  1. java中String的相等比较

    首先贴出测试用例: package test; import org.junit.Test; /** * Created by Administrator on 2015/9/16. * */ pub ...

  2. hadoop的概念

    hadoop的概念 网上会经常遇到各种hadoop的概念,Hive,HBase,Hdfs都各是什么呢? 首先从hdfs说起,hdfs是分布式文件系统,它把集群当作单机一样做文件操作,文件可能存在于多个 ...

  3. LINQ to SQL语句(5)之Order By

    适用场景:对查询出的语句进行排序,比如按时间排序等等. 说明:按指定表达式对集合排序:延迟,:按指定表达式对集合排序:延迟,默认是升序,加上descending表示降序,对应的扩展方法是OrderBy ...

  4. Winform图片拖拽与缩放

    最近做项目的时候遇到上传施工平面布置图,查看,因为图片比较大,一般的显示器分辨率无法显示全,然后还需要放大看清楚图片里面的文字内容,所以需要用到图片的拖拽与缩放功能.这里整理下具体操作. 首先新建一个 ...

  5. [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(4)

    这个系列已经写了6篇,链接地址如下: [Asp.net 5] DependencyInjection项目代码分析 [Asp.net 5] DependencyInjection项目代码分析2-Auto ...

  6. 关于ajax的同步和异步

    今天在开发中遇到个ajax访问Action 返回json 拼接Html,有时候能显示,有时候显示不出来. 考虑后一定是页面元素加载的问题. 所以把jq ajax设置为同步. 同步意为当访问后台代码时, ...

  7. SQLServer中游标是如何处理数据的?

    游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次以行或者多行前进或向后浏览数据的能力.我们可以把游标当作一个指针,它可以指定结果中的任何位置,然后允许 ...

  8. UWP游戏防内存修改器的方法

    最近我一直在编写适用于Windows 10商店的游戏.这款游戏比较怕玩家用修改器改金钱,因为这种修改会导致某些内购失效并且损害公平性.于是我把自己见过的三种反修改器的方法给网友们介绍一下. 首先说明一 ...

  9. Mysql存储过程(四)——异常处理

    http://blog.csdn.net/crazylaa/article/details/5368421 有时候,不希望存储过程抛出错误中止执行,而是希望返回一个错误码. MySQL 支持异常处理, ...

  10. Hadoop笔记系列 一 用Hadoop进行分布式数据处理(1)

    学习资料参考地址: 1.http://blog.csdn.net/zhoudaxia/article/details/8801769 1.先说说什么是Hadoop? 个人理解:一个分布式文件存储系统+ ...