在我们使用数据库的时候,总会要写一个dbmanager类来进行总体的数据库管理,在这里我们就要实现一个数据库管理类,这个是一个比较小型的数据库管理类,大体上实现了增删改查,在后面我们就会扩建这个数据库管理类,实现各种连接,来进行数据库的管理,好了,下面我们来看一下我们的代码:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DBManager {
/**
* 该方法用户连接数据库
*
* @return 返回Connection的一个实例
*/
private Connection getConnection() {
Connection con = null;
try {
Class.forName(StaticVar.DRIVER_NAME).newInstance();
con = DriverManager.getConnection(StaticVar.DB_URL,
StaticVar.USER_NAME, StaticVar.DB_PASSWD);
} catch (InstantiationException e) {
return null;
} catch (IllegalAccessException e) {
return null;
} catch (ClassNotFoundException e) {
return null;
} catch (SQLException e) {
return null;
}
return con;
}
/**
* 用于查询sql语句
*
* @param sql
* sql语句
* @return 返回ResultSet集合
*/
public ResultSet select(String sql) {
ResultSet res = null;
Connection con = getConnection();
Statement state = null;
if (!(con == null)) {
try {
state = con.createStatement();
res = state.executeQuery(sql);
} catch (SQLException e) {
return null;
}
}
if (state != null) {
try {
state.close();
} catch (SQLException e) {
return null;
}
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
return null;
}
}
return res;
}
/**
* 向表中插入一个元素,返回插入后的元素的id
*
* @param sql
* @return
*/
public int insert(String sql) {
int iId = -1;
Connection con = getConnection();
Statement state = null;
if (con != null) {
try {
state = con.createStatement();
int res = state.executeUpdate(sql,
Statement.RETURN_GENERATED_KEYS);
if (res != 0) {
ResultSet rs = state.getGeneratedKeys();
if (rs.next()) {
iId = rs.getInt(1);
}
}
} catch (SQLException e) {
iId = -1;
}
}
if (state != null) {
try {
state.close();
} catch (SQLException e) {
}
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
}
}
return iId;
}
/**
* 修改表中的某个元素的数值
*
* @param sql
* sql语句
* @return 元素是否被成功修改
*/
public boolean update(String sql) {
boolean updated = false;
Connection con = getConnection();
Statement state = null;
if (con != null) {
try {
state = con.createStatement();
int res = state.executeUpdate(sql);
if (res == 0) {
updated = false;
} else {
updated = true;
}
} catch (SQLException e) {
updated = false;
}
}
if (state != null) {
try {
state.close();
} catch (SQLException e) {
}
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
}
}
return updated;
}
/**
* 删除表中的某一个表项
*
* @param sql
* sql语句
* @return 返回是否删除成功
*/
public boolean delete(String sql) {
boolean deleted = false;
Connection con = getConnection();
Statement state = null;
if (con != null) {
try {
state = con.createStatement();
int res = state.executeUpdate(sql);
if (res == 0) {
deleted = false;
} else {
deleted = true;
}
} catch (SQLException e) {
deleted = false;
}
}
if (state != null) {
try {
state.close();
} catch (SQLException e) {
}
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
}
}
return deleted;
}
}
下面看一下其中用到的一个类StaticVar。
StaticVar.java
开发语言:java,支持数据库:Mysql 5,系统架构:J2EE,操作系统:linux/Windows1. 引言 32. 系统的结构 32.1 系统概述 33. 功能模块设计说明 43.1 商品管理 43.1.1 添加商品功能模块 53.1.2 商品列表功能模块 83.1.3 商品关联功能模块 93.
0
<code class="hljs java">
public class StaticVar {
public static final String DB_URL = "jdbc:mysql://localhost/db_test?useUnicode=true&characterEncoding=UTF-8";
public static final String USER_NAME = "chen";
public static final String DB_PASSWD = "******";
public static final String DRIVER_NAME = "com.mysql.jdbc.Driver";
}
</code><code class="hljs java">这样我们的一个小型的数据库管理类就实现了,至于后面的扩展,我们会在后面的博客中讲到。
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号