𝓝𝓮𝓶𝓸&博客

【Java】连接数据库MySQL

工具: 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项目,下次连接可直接导入,只需修改部分信息。

posted @ 2018-11-29 15:41  Nemo&  阅读(304)  评论(0编辑  收藏  举报