java链接并操作数据库
- 链接准备
- 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链接并操作数据库的更多相关文章
- SQL语言(二) java怎样连接操作数据库中的数据
		import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ... 
- Java 链接SQL Server 数据库
		1 //Java 连接 SQL Server数据库 2 public static final String DRIVERNAME="com.microsoft.sqlserver.jdbc ... 
- java中如何操作数据库(增删改查)
		EntityManager 是用来对实体Bean 进行操作的辅助类.他可以用来产生/删除持久化的实体Bean,通过主键查找实体bean,也可以通过EJB3 QL 语言查找满足条件的实体Bean.实体B ... 
- Java之JDBC操作数据库
		DBC JDBC就是一套接口,真正执行的是jar包里得实现类,通过泛型对象来执行实现类里的方法. 步骤: ###1.导入驱动jar包到工程中 ###2.编写代码注册驱动,我们要让程序知道用的是哪个驱动 ... 
- JAVA连接、操作数据库的DBHelper
		工厂模式的DBHelper 1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.Prepa ... 
- Java伪界面操作数据库的小实例
		首先在Mysql中有两个表fruit和login: package com.zuoye; import java.sql.*; import java.util.*; public class Tes ... 
- Java程序要操作数据库,一定要使用JDBC技术吗?
		<!-- MySQL驱动,连接数据库用,由数据库厂商提供 --> <dependency> <groupId>mysql</groupId> <a ... 
- Java实例---简单的数据库操作
		源码分析 DAOFactory.java package cn.ftl.mysql ; public class DAOFactory { public static IEmpDAO getIEmpD ... 
- Python学习笔记 - day11 - Python操作数据库
		MySQL的事务 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关,MySQL的两种引擎如下: 1.MyISAM:不支持事务,用于只读程序提高性能 2.InnoDB:支持ACID ... 
随机推荐
- BST B树 B+树
			二叉排序树/二叉搜索树 (BST) 定义 左子树节点值<根节点值<右子树节点值 默认不允许两个节点的关键值相同 进行中序遍历可以得到递增的有序序列 查找效率 取决与树的高度,最好O(log ... 
- jmeter实际场景应用之测试上传excel文件
			日常工作上测试的时候,会有一些场景是导入/上传文件.我们系统多是excel文件,这里就用excel文件为例,详述一下此次测试遇到的坑.最终结果是成功的,请看到最后! 1.获取接口的一些参数信息 先按F ... 
- 巧用模糊实现视觉的 3D 效果
			本文较短,将介绍巧用模糊实现视觉 3D 效果的技巧. 我们都知道,在正常的视觉效果中,离我们越近的通常我们会看的越清晰,而离我们较远则相对没那么清晰~ 我们可以利用清晰与模糊两种状态来构建视差效果.像 ... 
- 日常shell练习
			2021-07-19 1.echo的使用 1.1 echo -n 表示不换行输出 # echo输出会自动换行,换行输出两个1 echo 1 echo 1 # 不换行输出,不换行输出两个1 echo - ... 
- GetX代码生成IDEA插件,超详细功能讲解(透过现象看本质)
			前言 本文章不是写getx框架的使用,而且其代码生成IDEA插件的功能讲解 我之前写过俩篇很长很长的getx文章 一篇入门使用:Flutter GetX使用---简洁的魅力! 一篇原理深度剖析:Flu ... 
- Mysql常用基础命令操作
			常见操作命令:1.连接Mysql (客户端工具NaviCat.phpMyAdmin.MySQL-Front)格式: mysql -h 主机地址 -u用户名 -p用户密码(1)连接到本机上的MYSQL. ... 
- 痞子衡嵌入式:MCUXpresso IDE下工程链接文件配置管理与自动生成机制
			大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下工程链接文件配置管理与自动生成机制. 痞子衡在 2018 年初写过一个专题 <嵌入式开发文件系列&g ... 
- ThreadLocal原理简单刨析
			ThreadLocal原理简单刨析 ThreadLocal实现了各个线程的数据隔离,要知道数据是如何隔离的,就要从源代码分析. ThreadLocal原理 需要提前说明的是:ThreadLocal只是 ... 
- shell 脚本 根据PID过滤查看进程所有信息
			#!/bin/bash read -p "输入要查询的PID: " P #筛选第二列等于输入的PID号 n=`ps aux | awk '$2~/^'$P'$/ {print $1 ... 
- Dockerfile 自动制作 Docker 镜像(一)—— 基本命令
			Dockerfile 自动制作 Docker 镜像(一)-- 基本命令 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:手动制作Do ... 
