工具: eclipse
    MySQL
    Navicat for MySQL
    MySQL 连接驱动:mysql-connector-java-5.0.4-bin.jar

SQL 代码

CREATE TABLE user
(
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(30) NOT NULL,
password VARCHAR(32) NOT NULL,
age INT NOT NULL,
sex VARCHAR(2) DEFAULT'男',
birthday DATE
);

Java 连接

所需的jar包下载

百度网盘 提取码: 68pv

使用方法:
  1. 在工程目录中创建lib文件夹,将下载好的JDBC(jar包)放到该文件夹下。
  2. 右键工程名,选择 Buiding Path | Configure Buiding Path ,在java build path中的Libraries分页中选择Add JARs...,选择刚才添加的JDBC(jar包)。

数据库连接并模糊查询代码

定义:

  1. 定义加载数据库驱动程序
  2. 定义数据库连接地址:主机名称:端口号 / 数据库名
  3. 定义数据库连接用户名
  4. 定义数据库连接密码

加载:

  1. 根据驱动完整类名实例化Class对象(即 加载驱动类)
  2. 创建连接对象:连接数据库MySQL数据库时,要写上连接的用户名和密码
  3. 创建SQL语句对象
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date; public class PreparedStatementDemo {
// 定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver"; //驱动程序在jar包中,此字符串是Driver.class的地址
// 定义MySQL数据库的连接地址
public static final String DBURL = "jdbc:mysql://localhost:3306/MySQL"; //主机名称:端口号 / 数据库名
// MySQL数据库的连接用户名
public static final String DBUSER = "root";
// MySQL数据库的连接密码
public static final String DBPASS = "mysqladmin";
public static void main(String[] args) {
String keyWord = "李"; //设置查询关键字
String sql = "SELECT id,name,password,age,sex,birthday" + " FROM user WHERE name LIKE ? OR password LIKE ? OR sex LIKE ?";//SQL语句
try {
//Class.forName()是为了完整的“包.类”名称实例化Class对象。
//根据类的路径找到类的字节码,然后加载到java虚拟机里面,这样就可以调用类的方法
Class.forName(DBDRIVER);
//创建连接对象 连接数据库MySQL数据库时,要写上连接的用户名和密码
Connection conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS); //数据库连接
//创建 准备好的语句 对象
PreparedStatement pstmt = conn.prepareStatement(sql); //数据库操作,实例化对象
pstmt.setString(1, "%" + keyWord + "%"); //设置第一个占位符“?”,模糊查询
pstmt.setString(2, "%" + keyWord + "%");
pstmt.setString(3, "%" + keyWord + "%");
ResultSet rs = pstmt.executeQuery(); //保存查询结果,实例化对象
while(rs.next()) //指针向下移动
{
int id = rs.getInt(1);
String name = rs.getString(2);
String pass = rs.getString(3);
int age = rs.getInt(4);
String sex = rs.getString(5);
Date birthday = rs.getDate(6);
System.out.print("编号:" + id + " ");
System.out.print("姓名:" + name + " ");
System.out.print("密码:" + pass + " ");
System.out.print("年龄:" + age + " ");
System.out.print("性别:" + sex + " ");
System.out.println("生日:" + birthday);
}
rs.close(); //关闭结果集
pstmt.close(); //操作关闭
conn.close(); //数据库关闭
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

提示

可保存这此Java项目,下次连接可直接导入,只需修改部分信息。

Java连接数据库之MySQL的更多相关文章

  1. Java连接数据库(mysql,sqlserver)

    犹记当年为了使用java程序连接mysql数据库花费一天时间,最后发现是没有导入外包,如今看来真的发现自己那时有点二,也怪我使用的教科书上没有说明这点(强行甩锅,哈哈).今天分享出来,,希望后者不因为 ...

  2. Java连接数据库的辣几句话

    Java连接数据库的辣几句话 1.java连接Oracle数据库 使用以下代码三个步骤: 1.下载ojdbc.jar包并导入项目中.附下载地址:http://download.csdn.net/det ...

  3. servlet中Java连接数据库后的基本操作

    servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码 ...

  4. Java 测试Hibernate+Mysql简单的数据存储

    想使用Hibernate框架,在网上看了一个Hibernate学习视频,试着做了一个小小的Java连接数据库的操作,Java初学者一个,大家多多包涵 开发环境: 1.安装MySql, 2.安装了Ecl ...

  5. java连接数据库(jdbc)调用配置文件

    各种语言都有自己所支持的配置文件,后缀名“.properties”结尾的就是其中之一. 在java连接数据库时,采取读取配置文件的方式,来获取数据库连接. 新建jdbc.properties文件,内容 ...

  6. JAVA连接数据库 #03# HikariCP

    索引 为什么用数据库连接池? HikariCP快速入门 依赖 简单的草稿程序 设置连接池参数(只列举常用的) MySQL配置 修改Java连接数据库#02#中的代码 测试 为什么用数据库连接池? 为什 ...

  7. Java连接数据库 #02# JDBC经典套路

    内容索引 LocalConnectionFactory.java LocalConnectionProxy.java ProfileDAO.java-2.0 ProfileDAOImpl.java-2 ...

  8. Java连接数据库 #01# JDBC单线程适用

    官方教程(包括 javase的基础部分):JDBC Basics 重新梳理.学习一下“Java连接数据库”相关的内容. 因为最开始没有认真学多线程和JDBC,一直在自己写的多线程程序中维持下面的错误写 ...

  9. Java基础86 MySQL数据库基础知识

    本文知识点(目录): 1.MySQL数据库的概述    2.MySQL数据库的管理[对数据库的操作](查询.删除.创建数据库,以及查询和修改数据库的编码模式)    3.表的管理[对数据库 表的操作] ...

随机推荐

  1. VS发布IIS Express,允许外网调式(如微信开发)

    环境 VS2015 IIS Express win10操作系统 natapp内网穿透 localhost && 127.0.0.1 && 本机内网IP 产生现象:VS调 ...

  2. JMeter关联的几种方式总结案例

    1.接口响应结果,通常为HTML.JSON格式的数据,对于HTML的响应结果的提取,可以通过正则表达式,也可以通过XPath 来提取. 2.对于JSON格式的数据,可以通过正则表达式.JSON Ext ...

  3. 记一次Hbase的行键过滤器事故问题

    数据总数:746条数据 因为后面需要进行算法合成,而且spark目前对这种算法支持并不好,因此采用代码编写,所以在查询hbase的过程中采用的是java直接查询, 但是为了加快查询速度,我尽可能的使用 ...

  4. 小程序-canvas在IOS手机层级最高无法展示问题

    要求的效果: 正面: 背面: 在开发者工具 利用css 和定位实现了一个版本 .topBox.on { transform:rotateY(180deg); } .topBox { position: ...

  5. 在无向图中找最短桥(tarjan)

    题目:hdu 4738 题目意思:  曹操有N个岛,这些岛用M座桥连接起来 每座桥有士兵把守(也可能没有) 周瑜想让这N个岛不连通,但只能炸掉一座桥 并且炸掉一座桥需要派出不小于守桥士兵数的人去 解题 ...

  6. 在ideaUI中建立maven项目

    1.新建New 注意:第一次创建maven项目需要在有网情况下进行 2.可以看见我们建立的项目了

  7. json格式new Date()的一个小坑

    见图:JSON.stringify( new Date(Date.parse('xxxx-xx-xx'))) 若是传的日期,在10号前,要进行转换.

  8. cookie设置域名问题,cookie跨域

    今天研究一天发现cookie无法设置除当前域名或者其父域名之外的其他domain. 这个是浏览器出于对cookie的保护造成的,也就是cookie无法跨域设置. 对于子域名也有如下规则,当前域名只能设 ...

  9. HDP Hive StorageHandler 下推优化的坑

    关键词:hdp , hive , StorageHandler 了解Hive StorageHandler的同学都知道,StorageHandler作为Hive适配不同存储的拓展类,同时肩负着Hive ...

  10. LeetCode 33 Search in Rotated Sorted Array [binary search] <c++>

    LeetCode 33 Search in Rotated Sorted Array [binary search] <c++> 给出排序好的一维无重复元素的数组,随机取一个位置断开,把前 ...