您的位置:首页 > 数据库 > MySQL

如何使用三层框架开发 JDBC 连接 Mysql 数据库

2017-06-15 21:17 956 查看
(一)项目对应的包和类,接口



(二)对应的编码:

package com.cn.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 * 
 * 创建人: Administrator 创建时间:2017-6-12功能描述:JdbcUtil链接数据库的工具类
 */
public class JdbcUtil {
/*
 * 四要素
 */

private static final String DRIVER = "com.mysql.jdbc.Driver"; // 驱动
private static final String URL = "jdbc:mysql://localhost:3306/admin";// 地址
private static final String USER = "root"; // 数据库用户名
private static final String PWD = "root"; // 数据库密码

// ctrl+shift+x,y 改变大小写

/*
 * 三个接口
 */
protected Connection connection; // 链接数据库的
protected PreparedStatement pStatement; // 操作SQL语句
protected ResultSet resultSet; // 接收结果

/*
 * (打开数据库)的方法
 */
public void getConnection() {
try {
Class.forName(DRIVER);
connection = DriverManager.getConnection(URL, USER, PWD);
System.out.println("老司机开车了,数据库连接了!");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}

/**
 * (关闭数据库)的方法
 */

public void closeAll() {
try {
if (resultSet != null) {
resultSet.close();
}
if (pStatement != null) {
pStatement.close();
}
if (connection != null) {
connection.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}

/*
 * 查询的方法
 */
public ResultSet executeQuery(String sql, Object... objects) {
// 1.打开数据库
getConnection();
try {
// 2.preparedStatement操作SQL语句
pStatement = connection.prepareStatement(sql);
// 3.进行参数非空判断
if (objects != null) {
for (int i = 0; i < objects.length; i++) {
pStatement.setObject(i + 1, objects[i]);
}
// 4.把结果交给resultSet
resultSet = pStatement.executeQuery();
}
} catch (SQLException e) {
e.printStackTrace();
}
// 5.返回给对应的方法
return resultSet;
}

/**
 * 增,删,改的方法
 */
public int executeUpdate(String sql, Object...objects) {
int result = 0;
// 1.打开数据库
getConnection();
try {
// 2.数据库语句操作
pStatement = connection.prepareStatement(sql);
// 3.判断参数是否为空
if (objects != null) {
for (int i = 0; i < objects.length; i++) {
pStatement.setObject(i + 1, objects[i]);
}
// 4.接收结果
result = pStatement.executeUpdate();
}
} catch (SQLException e) {
e.printStackTrace();
}
// 5.返回结果
return result;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐