Java DAO模式 数据库连接类

原创 2018年04月17日 00:01:23

第一步:检查MySQL是否准备妥当

首先检查mysql是否安装成功

通过cmd进去mysql:以管理员身份运行cmd->输入:mysql -h localhost -u root -p -->输入密码-->成功进入。这一步操作是为了检查mysql是否安装成功。

查看MySQL中有哪些数据库以及表

mysql 显示所有的数据库:https://blog.csdn.net/u010746364/article/details/53078550

下载mysql视图管理工具Navicat,查看数据库结构



第二步:新建一个Java项目并配置好数据库的驱动程序

java连接mysql数据库的详细步骤:https://blog.csdn.net/huwentao0305/article/details/53378755


新建数据库连接类

由于所有数据库的连接操作都是固定的步骤,所以单独定义一个DatabaseConnection类,这个类主要负责

1.取得数据库的连接对象;

public Connection getConnection() {
		return this.conn; //返回本类对象中的Connection对象
	}

2.数据库的关闭操作;

	public void close() {
		if(this.conn != null) { //表示现在有连接对象
			try {
				this.conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}

3.DatabaseConnection()的构造方法:在其中实现数据库的连接!//在实例化本类对象时就意味着要进行数据库的开发

public DatabaseConnection() {
		try {
			Class.forName(DBDRIVER); //加载驱动程序
			this.conn = DriverManager.getConnection(DBURL, DBUSER, PASSWORD); //连接数据库
		} catch (Exception e) {
			e.printStackTrace();
		} 
	}

4.储存以下数据:驱动程序名、数据库路径、数据库用户名、数据库密码,同时需要新建一个Connection对象。

private static final String DBDRIVER = "com.jdbc.mysql.Driver" ; //驱动程序名
private static final String DBURL = "jdbc:mysql://localhost:3306/test" ; //数据库路径
private static final String DBUSER = "root" ; //用户名
private static final String PASSWORD = "*******" ; //密码
private Connection conn ; //Connection对象

既然是一个专门用于数据库的连接操作,则将其保存在dbc子包中。


该类完整代码如下:

package com.fs.dbc;

import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Connection;

/**
 * 本类专门负责数据库的连接和关闭,在实例化本类对象时就意味着要进行数据库的开发
 * 所以在本类的构造方法里要进行数据库驱动加载和数据库连接取得
 * @author 婉阿婉
 * 所以需要提供getConnection()、close()方法。
 */
public class DatabaseConnection {
	private static final String DBDRIVER = "com.jdbc.mysql.Driver" ; //驱动程序名
	private static final String DBURL = "jdbc:mysql://localhost:3306/test" ; //数据库的路径
	private static final String DBUSER = "root" ; //用户名
	private static final String PASSWORD = "*******" ; //密码
	private Connection conn ; //声明Connection对象
	/**
	 * 在构造方法中为conn对象实例化,可以直接取得数据库的连接对象
	 * 由于说有的操作都是基于数据库完成的,所以如果数据库连接失败,那么所有的后续操作也就没有意义了
	 */
	public DatabaseConnection() {
		try {
			Class.forName(DBDRIVER); //加载驱动程序
			this.conn = DriverManager.getConnection(DBURL, DBUSER, PASSWORD); //连接数据库
		} catch (Exception e) {
			e.printStackTrace(); //这个异常抛出的意义不大
		} 
	}
	/**
	 * 取得一个数据的连接对象
	 * @return Connection实例化对象
	 */
	public Connection getConnection() {
		return this.conn; //返回本类对象中的Connection对象
	}
	/**
	 * 关闭数据库
	 */
	public void close() {
		if(this.conn != null) { //表示现在有连接对象
			try {
				this.conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
}

一个小测试

数据库中表结构以及表内容


使用Test类输出表smalltest中的值

package com.fs.dbc;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Test {
	public static void main(String[] args) throws SQLException {
		DatabaseConnection dbc = new DatabaseConnection();
		if (dbc.getConnection() != null) {
			System.out.println("success");
			// 创建statement类对象,用来执行SQL语句
			Statement statement = dbc.getConnection().createStatement();
			String sql = "select * from smalltest"; // 要执行的SQL语句
			ResultSet rs = statement.executeQuery(sql);// ResultSet类,用来存放获取的结果集
			int id = 0; //
			while (rs.next()) {
				id = rs.getInt("id");// 获取id这列数据
				System.out.println(id);// 输出
			}
		} else {
			System.out.println("f");
		}
	}
}

输出结果


成功~~

o(* ̄▽ ̄*)ブ 开心

φ(゜▽゜*)♪高兴 

 (‾◡◝)骄傲

java中DAO模式的好处

DAO模式作为与数据库打交道的东西,他只关注怎么将数据写入数据库,和怎么取出来.  作为DAO中的数据类型他不依赖于任何技术,jdbc也好,hibernate也好,他对你底层的访问提供了很好的支持 ...
  • chen19921212
  • chen19921212
  • 2014-08-09 18:30:53
  • 1715

Orlc数据库连接类dao

  • 2014年03月11日 18:51
  • 800B
  • 下载

JAVA DAO模式实现

DAO及servlet控制页面跳转 1.建立数据库及表(使用mysql数据库)     create database bookdb;     create ...
  • lei3000
  • lei3000
  • 2011-08-08 08:56:30
  • 4424

java设计模式--DAO模式

DAO设计模式 ★ DAO的理解 1、DAO其实是利用组合工厂模式来解决问题的,并没有带来新的功能,所以学的其实就是个思路。 2、DAO理论上是没有层数限制的。 3、DAO的各层理...
  • Dragon_Dai_2017
  • Dragon_Dai_2017
  • 2017-08-08 20:35:48
  • 304

详解DAO模式(上)

详解DAO模式(上)   DAO(Data Access Object)是一个数据访问接口,数据访问:顾名思义就是与数据库打交道,夹在业务逻辑与数据库资源中间。   在核心J2EE模式中DAO的定...
  • Action_learning
  • Action_learning
  • 2015-01-30 21:17:24
  • 4275

Java 分层设计(DAO设计模式)

此文章是本人学习mldn魔乐科技DAO设计模式教学视频后,总结下来,用于复习使用,在这里感谢mldn的学习视频。 DAO设计模式? DAO全称是(Data Access Object,数据库访问对象)...
  • CoderBruis
  • CoderBruis
  • 2017-05-25 13:44:10
  • 2061

Java - 什么是DAO模式?

DAO(Data Access Object)顾名思义是一个为数据库或其他持久化机制提供了抽象接口的对象,在不暴露底层持久化方案实现细节的前提下提供了各种数据访问操作。在实际的开发中,应该将所有对数据...
  • chimomo
  • chimomo
  • 2017-11-01 10:16:33
  • 217

java DAO模式实现 附源码

  • 2010年07月27日 15:58
  • 158KB
  • 下载

java的dao设计模式

  • 2009年02月06日 19:21
  • 20KB
  • 下载

DAO模式的例子

  • yangyuanqiao
  • yangyuanqiao
  • 2009-07-27 09:23:00
  • 5133
收藏助手
不良信息举报
您举报文章:Java DAO模式 数据库连接类
举报原因:
原因补充:

(最多只允许输入30个字)