import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DBUtil {
private static Connection con = null;
private Statement statement;
private PreparedStatement preparedStatement;
public static final String URL = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=mydb;SelectMethod=cursor";
public static final String DRIVERNAME = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
private final static String USERNAME = "sa";
private final static String PASSWORD = "";
private DBUtil() {
con = getConnection();
}
public static synchronized DBUtil getDBInstance() {
return new DBUtil();
}
public static synchronized Connection getConnection() {
// 直接连接数据库
try {
Class.forName(DRIVERNAME).newInstance();
con = DriverManager.getConnection(URL, USERNAME, PASSWORD);
con.setAutoCommit(true);
} catch (Exception ex) {
System.out.println("数据库加载失败!");
}
return con;
}
public Statement getStatement() {
try {
con = getConnection();
statement = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
} catch (Exception e) {
System.out.println("getStatement Exception");
System.out.println(e.getMessage());
}
return statement;
}
public PreparedStatement getPreparedStatement(String sql) {
try {
con = getConnection();
preparedStatement = con.prepareStatement(sql);
} catch (Exception e) {
System.out.println("getPstmt");
System.out.println(e.getMessage());
}
return preparedStatement;
}
// 关闭数据库
public void closeConnection() {
// System.out.println("---------------开始关闭数据库连接------------------");
try {
if (statement != null)
statement.close();
} catch (Exception e) {
System.err.println("statement关闭出现异常!");
}
try {
if (preparedStatement != null)
preparedStatement.close();
} catch (Exception e) {
System.err.println("preparedStatement关闭出现异常!");
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
} finally {
con = null;
}
}
// System.out.println("----------------关闭数据库连接成功!---------------------");
}
public static void main(String[] args) {
new DBUtil();
}
}
分享到:
相关推荐
DBUtil 是一个在ASP.NET开发环境中常用的数据库连接工具类,它的设计目的是为了简化数据库操作,减少程序员编写重复的连接和断开数据库的代码,从而提高开发效率和代码的可维护性。通过使用DBUtil,开发者可以快速地...
比如,一个简单的查询操作,只需要调用DBUtil的query方法,传入SQL语句和参数,就可以得到查询结果。 在提供的压缩包文件"DBUtil"中,可能包含了DBUtil工具类的源代码、相关的配置文件(如数据库连接配置)以及使用...
DButil 是一个数据库操作工具类,它封装了常见的SQL操作,如模糊查询、分页查询、数据的增删改查等。这样的工具类在实际开发中非常常见,它简化了数据库交互的代码,提高了开发效率。下面将详细介绍DButil封装中的...
Dbutil,全称为Apache Commons DbUtils,是一款由Apache软件基金会开发的开源Java工具包,它为JDBC(Java Database Connectivity)提供了一层简单的封装,旨在让数据库操作变得更加便捷且不易出错。DbUtil的设计目标...
比如,我们想要执行一个简单的SELECT语句: ```java QueryRunner runner = new QueryRunner(sqlSessionFactory); String sql = "SELECT * FROM users"; ResultSetHandler<List<User>> handler = new ...
封装类应提供一个方法,接受SQL模板和参数,生成PreparedStatement对象。 3. 数据操作接口:创建通用的增删改查方法,例如`executeInsert()`, `executeUpdate()`, `executeQuery()`,以处理不同的SQL语句类型。这些...
我们可以创建一个名为`DBUtil`的类,这个类将包含初始化连接、执行SQL、关闭连接等方法。初始化连接可以使用`pymysql`或`mysql-connector-python`库,这里以`pymysql`为例: ```python import pymysql from DB_...
DbUtil 对 JDBC 进行简单的封装,帮我们做了很多工作,省去很多重复冗余的代码。 但 DbUtil 对类的自动装载没有进行较好的封装 本demo实现了数据库中字段若为下划线分隔,而对应的实体类中是以驼峰式命名的情况进行...
6. **dbutil工具类**: `dbutil`可能是一个自定义的工具类,包含如获取连接、执行SQL、处理结果集等常用方法,以提高代码的可读性和复用性。例如,它可能有一个`executeQuery()`方法用于执行查询,并返回结果集,或者...
首先,DBUtil包是一个用于数据库操作的实用工具包,它通常包含了一系列静态方法,可以方便地执行SQL语句、处理结果集、事务管理等。在Java编程中,DBUtil包经常被用来封装JDBC(Java Database Connectivity)操作,...
为了实现简单的数据库封装,通常会创建一个`DBUtil`类,包含静态方法来处理这些步骤。例如,创建一个`getConnection()`方法用于连接数据库,一个`executeQuery()`方法用于执行查询,并返回结果集,一个`...
为了提高代码的复用性和可维护性,通常会将数据库连接操作封装到一个工具类中。本篇文章将详细讲解如何创建一个用于连接MySQL数据库的Java工具类。 首先,确保你的项目中已经包含了JDBC驱动,对于MySQL,这通常是`...
3、借鉴javaEE的dao+daoUtil模式,对于user类,直接赋一个实例,可实现userLogin(user u)(用户登陆验证)、userReg(user u)(用户注册),直接封装到PO对象user类,对于不同的数据,只需更改user类的名称和字段,如...
由于 DBUtil 是一个封装类,因此可以轻松地替换或扩展其内部实现,以适应项目需求的变化。 在提供的压缩包 `DBUtil-main` 中,可能包含了 DBUtil 类的源代码、示例用法、配置文件以及相关的文档。为了更好地利用这...
通常会有一个DbUtil或JdbcHelper类作为主要的入口点,提供静态方法供开发者调用。例如,`executeQuery(String sql, Object[] params)`用于执行查询,`executeUpdate(String sql, Object[] params)`用于执行更新操作...
DBUtil是一个常用的数据库连接池工具类,它封装了JDBC的基本操作,如建立和关闭数据库连接,执行SQL语句等,以提高代码的可读性和复用性。在Java开发中,使用DBUtil可以避免频繁地创建和关闭数据库连接,从而提高...
DBUtils的核心理念是提供一个简单、安全的方式来执行数据库操作,避免了常见的错误和资源泄露,同时提高了开发效率。 DBUtils的核心功能包括: 1. **数据库连接管理**:DBUtils提供了`ConnectionHelper`类,它实现...
封装JDBC主要是对以上步骤进行抽象和封装,例如创建一个`DBUtil`类,提供以下功能: - 静态方法用于加载驱动和建立连接,如`getConnection(String url, String username, String password)`。 - 创建一个`...
以下是一个简单的`DBUtil`类结构示例: ```java public class DBUtil { private static DataSource dataSource; // 数据源 static { // 初始化数据源 } public static List<Object> query(String sql, Class...