• 链接准备

  1. MySQL数据库驱动(连接器)。mysql-connector-java-x.x.xx.jar会在MySQL安装时提供,若Mysql是默认安装路径,则连接器在:C:\Program Files (x86)\MySQL\Connector.J 5.1文件夹里,然后在项目中建立一个lib文件夹,拷贝连接器放进去:

  2.将数据库驱动导入至项目的工作空间中,使得其内部包含的包和类都加入到编译环境中。(导入方式,选中上面一步的连接器,右键Buid path)

下面建立一个链接操作类来描述链接和操作方法:

  • 建立一个类Test
1 public class Test {
2
3 public static void main(String[] args) {
4
5 }
6 }
  • 第一步:在代码中初始化数据库驱动:Class.forName("com.mysql.jdbc.Driver").newInstance();,并添加异常处理块。
1 //第一步,在代码中初始化数据库驱动:
2 Class.forName("com.mysql.jdbc.Driver").newInstance();//初始化数据库驱动
  • 第二步:使用DriverManager链接数据库:
1 //第二步,使用DriverManager链接数据库:
2 Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydbone", "root", "199751hwl");
  • 第三步:获得一个会话:
1 //3.获得一个会话:
2 statement = con.createStatement();
  • 第四步:statement.execute执行SQL语句并返回结果:

    • 查操作
 1 if (statement.execute("SELECT * from person")) {//查
2
4 rs = statement.getResultSet();
5 while( rs.next() ) { // 依次获得查询结果,每次执行nest,换一行
6 String name = rs.getString("persName");//获取字段
7 String sex = rs.getString("persSex");
8 System.out.println(name+"\t"+sex);
9 }
11 }
12 else {
13 System.out.println("没有数据!");
14 }
15
    • 增操作
1 if (statement.execute("INSERT into person VALUE(7,'小发发','男','学习')")) {
2 System.out.println("异常!");//增操作这里没有返回
3 }
4 else {
5 System.out.println("增加成功!");
6 }
  • 第五步,关闭结果获取,关闭会话和链接
 1 finally {
2 try {
3 //第五步,关闭结果获取,关闭会话和链接
4 statement.close();
5 con.close();
6 rs.close();
7 } catch (SQLException e1) {
8 e1.printStackTrace();
9 }
10 }
  • 一个完整的小栗子:
 1 import java.sql.*;
2
3 public class TestOne {
4
5 public static void main(String[] args) {
6
7 ResultSet rs = null;
8 Statement statement = null;
9 Connection con = null;
10
11 try {
12
13 //第一步,在代码中初始化数据库驱动:
14 Class.forName("com.mysql.jdbc.Driver").newInstance();//初始化数据库驱动
15 //第二步,使用DriverManager链接数据库:指定链接数据库的信息
16 con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydbone?useUnicode=true&characterEncoding=UTF-8","root","199751hwl");
17 //第三步,获得一个会话:
18 statement = con.createStatement();
19 //第四步,执行SQL并查除结果集合
20 if (statement.execute("SELECT * from person")) {//查
21 rs = statement.getResultSet();
22 while( rs.next() ) { // 依次获得查询结果,每次执行nest,换一行
23 String name = rs.getString("persName");//获取字段
24 String sex = rs.getString("persSex");
25 System.out.println(name+"\t"+sex);
26 }
27 }
28 else {
29 System.out.println("增加成功!");
30 }
31
32 } catch (InstantiationException | IllegalAccessException | ClassNotFoundException | SQLException e) {
33 e.printStackTrace();
34 }finally {
35 try {
36 //第五步,关闭结果获取,关闭会话和链接
37 statement.close();
38 con.close();
39 rs.close();
40 } catch (SQLException e1) {
41 e1.printStackTrace();
42 }
43 }
44 }
45 }

java链接并操作数据库的更多相关文章

  1. SQL语言(二) java怎样连接操作数据库中的数据

    import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ...

  2. Java 链接SQL Server 数据库

    1 //Java 连接 SQL Server数据库 2 public static final String DRIVERNAME="com.microsoft.sqlserver.jdbc ...

  3. java中如何操作数据库(增删改查)

    EntityManager 是用来对实体Bean 进行操作的辅助类.他可以用来产生/删除持久化的实体Bean,通过主键查找实体bean,也可以通过EJB3 QL 语言查找满足条件的实体Bean.实体B ...

  4. Java之JDBC操作数据库

    DBC JDBC就是一套接口,真正执行的是jar包里得实现类,通过泛型对象来执行实现类里的方法. 步骤: ###1.导入驱动jar包到工程中 ###2.编写代码注册驱动,我们要让程序知道用的是哪个驱动 ...

  5. JAVA连接、操作数据库的DBHelper

    工厂模式的DBHelper 1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.Prepa ...

  6. Java伪界面操作数据库的小实例

    首先在Mysql中有两个表fruit和login: package com.zuoye; import java.sql.*; import java.util.*; public class Tes ...

  7. Java程序要操作数据库,一定要使用JDBC技术吗?

    <!-- MySQL驱动,连接数据库用,由数据库厂商提供 --> <dependency> <groupId>mysql</groupId> <a ...

  8. Java实例---简单的数据库操作

    源码分析 DAOFactory.java package cn.ftl.mysql ; public class DAOFactory { public static IEmpDAO getIEmpD ...

  9. Python学习笔记 - day11 - Python操作数据库

    MySQL的事务 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关,MySQL的两种引擎如下: 1.MyISAM:不支持事务,用于只读程序提高性能 2.InnoDB:支持ACID ...

随机推荐

  1. 有关Java动态数组的一个小问题

    前言 问题描述 今天遇到一个关于集合的问题,觉得比较有趣,记录一下,这个问题是:定义一个用户类,至少包含姓名,年龄,生日,qq邮箱,初始化10个用户,利用String操作,提取qq到List集合中,姓 ...

  2. Centos7.4 安装MySQL 5.7.21 (通用二进制包)

    1.下载安装包 MySQL 官方下载地址:https://dev.mysql.com/downloads/mysql/ MySQL 5.7官方安装文档:https://dev.mysql.com/do ...

  3. GoLang设计模式02 - 工厂模式

    工厂模式是一种创建型模式,也是最常用的设计模式之一.调用方通过工厂产出并获取对象,可以不必关注对象创建的细节和构建逻辑. 在工厂模式下,调用方只和工厂进行交互,并告诉工厂具体获取哪种类型的对象.工厂负 ...

  4. Tensorflow之TFRecord的原理和使用心得

    本文首发于微信公众号「对白的算法屋」 大家好,我是对白. 目前,越来越多的互联网公司内部都有自己的一套框架去训练模型,而模型训练时需要的数据则都保存在分布式文件系统(HDFS)上.Hive作为构建在H ...

  5. spring整合jdbc方法一

    用了一段时间的spring这,闲来没事做一下spring整合jdbc 目录文件 导入jar包 由于spring的jar包是在myeclipse中自动导入的有些暂时用不到的也没有处理. Emp类 pac ...

  6. 在C#中使用RSA进行加密和解密

    这篇文章向您展示了如何在c#.net Windows窗体应用程序中使用RSA算法对字符串进行加密和解密.RSA是由Ron Rivest,Adi Shamir和Leonard Adleman开发的非对称 ...

  7. jupyter notebook在代码块中多行注释方法

    Ctrl+\是pycharm等IDE内的使用方法,而不是jupyter中的,正确的方法如下: 按住alt后光标变为十字形,沿着行标向下拖,光标变得很长,这时 shift+3 即可注释多行 想要取消注释 ...

  8. Marvell 88SE9215 AHCI驱动笔记

    禁止转载!禁止转载!禁止转载! 一.Marvell 88SE9215.AHCI与SATA简介 1.Marvell 88SE9215 1)概述 88SE9215是一个四端口,兼容3 Gbps和6 Gbp ...

  9. HTML基本概念及基本标签

    HTML基本概念及基本语法 1.HTML的基本概念 1.1  B/S.C/S基本概念 B/S(Browser/Server):指的是浏览器端与服务器端工作模式,优点相对节省本地存储空间,不足是需要占用 ...

  10. 在PHP中灵活使用foreach+list处理多维数组

    先抛出问题,有时候我们接收到的参数是多维数组,我们需要将他们转成普通的数组,比如: $arr = [ [1, 2, [3, 4]], [5, 6, [7, 8]], ]; 我们需要的结果是元素1变成1 ...