实现的基本步骤:

  1、加载驱动程序:    

Class.forName("com.mysql.jdbc.Driver");

  

  2、获得数据可连接:  

  private static final String url = "jdbc:mysql://localhost:3306/shopping?useUnicode=true&characterEncoding=UTF-8&useSSL=false"; //数据库地址
  private static final String usename = "root";
  private static final String password = "root"; //数据库密码   Connection connection = DriverManager.getConnection(URL,USER,PASSWORD); 

  其中,url中jdbc表示连接方式,mysql表示数据库软件为mysql,localhost表示数据库地址,3306表示数据库端口,shopping表示数据库名称。

  3、通过数据库的连接操作数据库,实现增删改查  

Statement statement = connection.createStatement();

  

ResultSet  resultSet = statement.executeQuery("SELECT * FROM goods;");  //用于执行数据库查询
ResultSet  resultSet = statement.executeUpdate("");//用于执行数据库更新

  另外一种sql语句执行方法:

PreparedStatement pStatement = connection.prepareStatement("");  //编译sql代码
pStatement.execute(); //执行sql代码

  下面是一个完整的测试代码:

package util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class DBHelper { private static String driver = "com.mysql.jdbc.Driver"; //数据库驱动
//连接数据库的URL地址
private static final String url = "jdbc:mysql://localhost:3306/shopping?useUnicode=true&characterEncoding=UTF-8&useSSL=false";
private static final String usename = "root";
private static final String password = "root"; //数据库密码 private static Connection connection =null;
//静态代码块负责加载驱动
static{//静态块中的代码会优先被执行
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} //单例模式返回数据库连接对象
public static Connection getConnection(){
if(connection==null){
try {
connection = DriverManager.getConnection(url,usename,password);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return connection;
}
return connection;
}
public static void main(String[] args) {
ResultSet resultSet = null;
try{
Connection connection = DBHelper.getConnection();
Statement statement = connection.createStatement();
resultSet = statement.executeQuery("SELECT * FROM goods;");
while(resultSet.next()){
System.out.println(resultSet.getString("name"));
}
}catch(Exception e){
e.printStackTrace();
}
}
}

  

  

打通Java与MySQL的桥梁——jdbc的更多相关文章

  1. 利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包含增删改查、JavaBean反射原理,附源码)

    最近看老罗的视频,跟着完成了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查.其中查询这块,包括普通的查询和利用反射完成的查询,主要包括以下几个函数接口 ...

  2. 利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包括增删改查、JavaBean反射原理,附源代码)

    近期看老罗的视频,跟着完毕了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完毕对数据库的增删改查.当中查询这块,包含普通的查询和利用反射完毕的查询,主要包含以下几个函数接口 ...

  3. Java连接MySql数据库之JDBC

    1.首先创建一个java Project项目 2.起一个英文的项目名 3.此窗口点击NO 4.此时项目状态如下 5.创建一个文件夹,并将mysql-connector-java-5.1.8-bin.j ...

  4. Java连接MySQL数据库及简单操作代码

    1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...

  5. 2、Java应用中常见的JDBC连接字符串(SQLite、MySQL、Oracle、Sybase、SQLServer、DB2)

    2.Java应用中常见的JDBC连接字符串 Java应用中连接数据库是不可或缺的,于是便整理一些可能用到的JDBC的jar包及其相匹配的URL,以备日后查阅. 1)SQLite Class.forNa ...

  6. 写给小白的JAVA链接MySQL数据库的步骤(JDBC):

    作为复习总结的笔记,我罗列了几个jdbc步骤,后边举个简单的例子,其中的try块请读者自行处理. /* * 1.下载驱动包:com.mysql.jdbc.Driver;网上很多下载资源,自己找度娘,此 ...

  7. 【JDBC】Java 连接 MySQL 基本过程以及封装数据库工具类

    一. 常用的JDBC API 1. DriverManager类 : 数据库管理类,用于管理一组JDBC驱动程序的基本服务.应用程序和数据库之间可以通过此类建立连接.常用的静态方法如下 static ...

  8. 总结java操作MySQL 即JDBC的使用

    java.sql包中存在DriverManager类,Connection接口,Statement接口和ResultSet接口.类和接口作用如下: DriverManager:主要用于管理驱动程序和连 ...

  9. JDBC Java 连接 MySQL 数据库

    MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 用于测试的 MySQL 数据库:game 查看数据库中的表 mysql ...

随机推荐

  1. PHP中include路径的解决方法汇总

    这几天整理一份很乱的代码,这才意识到php对include处理不是一般的贱:别的编程语言在处理include中的相对目录时,都是以当前处理的文件作为基准.也就是说,如果A包含B,B包含C时,C再包含一 ...

  2. Java之泛型浅解

    我觉得学习一个东西,首先得从概念上明白它大概是什么? “泛型”就是“参数化类型”,也就是是把类型当成了一种参数.之前我们看到得函数方法比如: public long add(int num1,int ...

  3. 如何更好的理解js中的this,分享2段有意思的代码

    关于js中this的浅析,大家可以点击[彻底理解js中this的指向,不必硬背]这篇博客了解. 今天遇到2段比较有意思的代码. ----------------第一段----------------- ...

  4. Javascript-- jQuery DOM篇(一)

    DOM创建节点及节点属性 通过JavaScript可以很方便的获取DOM节点,从而进行一系列的DOM操作.但实际上一般开发者都习惯性的先定义好HTML结构,但这样就非常不灵活了. 浏览器提供的一些原生 ...

  5. Android学习路线01

    part1:Java 1.Java基础 2.Java面向对象 3.数组与集合,异常,常用类 4.Io流 5.多线程socket编程 6.数据库,网络传输,数据解析 part2:Android 1.An ...

  6. 【leetcode刷题笔记】Sum Root to Leaf Numbers

    Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number ...

  7. freeMarker(二)——模板开发指南之入门

    学习笔记,选自freeMarker中文文档,译自 Email: ddekany at users.sourceforge.net 模板开发指南-入门  1.模板+数据模型=输出 假设在一个在线商店的应 ...

  8. bzoj 2084: Antisymmetry 回文自动机

    题目: Description 对于一个01字符串,如果将这个字符串0和1取反后,再将整个串反过来和原串一样,就称作"反对称"字符串.比如00001111和010101就是反对称的 ...

  9. BZOJ4010:[HNOI2015]菜肴制作

    我对贪心的理解:https://www.cnblogs.com/AKMer/p/9776293.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem ...

  10. JVM体系结构之六:堆Heap之2:新生代及新生代里的两个Survivor区(下一轮S0与S1交换角色,如此循环往复)、常见调优参数

    一.为什么会有年轻代 我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的唯一理由就是优化GC性能.你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我 ...