/* * Db.java
Created on 2007年8月20日, 上午 8:37
*/
import java.io.*;
import java.sql.*;
import java.util.Properties;
public class Db {
private String driver;
private String url;
private String user;
private String password;
private Connection conn;
private Statement stm;
private ResultSet rs;
public Db(){
this("DBConf.properties");
}
public Db(String conf) {
loadProperties(conf);
setConn();
}
public Connection getConn(){
return this.conn;
}
//handle the properties file to get the informations for connection
private void loadProperties(String conf){
Properties props = new Properties();
try {
props.load(new FileInputStream(conf));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
this.driver = props.getProperty("driver");
this.url = props.getProperty("url");
this.user = props.getProperty("user");
this.password = props.getProperty("password");
}
//implement the Connection
private void setConn(){
try {
Class.forName(driver);
this.conn = DriverManager.getConnection(url,user,password);
} catch(ClassNotFoundException classnotfoundexception) {
classnotfoundexception.printStackTrace();
System.err.println("db: " + classnotfoundexception.getMessage());
} catch(SQLException sqlexception) {
System.err.println("db.getconn(): " + sqlexception.getMessage());
}
}
public void doInsert(String sql) {
try {
Statement statement = conn.createStatement();
int i = stm.executeUpdate(sql);
} catch(SQLException sqlexception) {
System.err.println("db.executeInset:" + sqlexception.getMessage());
}
}
public void doDelete(String sql) {
try {
stm = conn.createStatement();
int i = stm.executeUpdate(sql);
} catch(SQLException sqlexception) {
System.err.println("db.executeDelete:" + sqlexception.getMessage());
}
}
public void doUpdate(String sql) {
try {
stm = conn.createStatement();
int i = stm.executeUpdate(sql);
} catch(SQLException sqlexception) {
System.err.println("db.executeUpdate:" + sqlexception.getMessage());
}
}
public ResultSet doSelect(String sql) {
try {
stm = conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
rs = stm.executeQuery(sql);
} catch(SQLException sqlexception) {
System.err.println("db.executeQuery: " + sqlexception.getMessage());
}
return rs;
}
public static void main(String[] args){
try{
Db db = new Db();
Connection conn = db.getConn();
if(conn != null && !conn.isClosed()) {
System.out.println("連結成功");
ResultSet rs = db.doSelect("select * from content");
while(rs.next()){
System.out.println(rs.getString(1)+":"+rs.getString(2)+":"+rs.getString(3));
}
rs.close();
conn.close();
}
}catch(SQLException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
三、Java 网络连接数据库的优点 使用 Java 语言连接数据库有很多优点,例如: * 跨平台性:Java 语言可以在多种平台上运行,包括 Windows、Linux、Mac OS 等。 * 安全性:Java 语言提供了强大的安全机制,例如 SSL...
### Java连接各种数据库的实例详解 在现代软件开发过程中,Java作为一门强大的编程语言,在企业级应用中扮演着举足轻重的角色。...总之,掌握这些基本的数据库连接技巧对于Java开发者来说是非常重要的。
数据库连接池是Java应用程序中管理数据库连接的一种高效策略,它能显著提高系统性能并减少资源消耗。本篇文章将深入解析一个自定义的JAVA数据库连接池类,帮助开发者更好地理解和运用这一关键技术。 首先,连接池的...
使用`DriverManager.getConnection()`方法建立数据库连接。首先,你需要注册MySQL的JDBC驱动,然后提供数据库连接的URL、用户名和密码。 ```java import java.sql.Connection; import java.sql.DriverManager; ...
在Java编程中,数据库连接池是一种管理数据库连接的机制,它可以高效地复用数据库连接,减少创建和销毁连接带来的开销。在配置数据库连接池时,通常需要提供数据库的用户名和密码。为了增强安全性,这些敏感信息往往...
下面,我们将深入探讨Java数据库连接(JDBC)的概念以及如何通过Java连接到不同的数据库系统。 1. JDBC简介: Java Database Connectivity (JDBC) 是Java平台中的一个标准API,它允许Java程序与各种类型的数据库...
Java单例模式是一种设计模式,它保证一个类...总的来说,这个Java单例模式的数据库连接源码提供了一种简单但有效的数据库连接管理方式,适合小规模应用。然而,在大型项目中,建议采用连接池来管理和优化数据库连接。
数据库连接池,是一种相当实用的应用程序。它可以保存、维护及创建用户所需的数据库连接。从而使得用户得到一个连接的时间降低90%以上。大大提升了数据库访问的反应时间。 这个是一个开源的代码。大家可以修改它、...
Java Web 与数据库交互实现三级联动 本文主要讲解如何使用 Java Web 技术和 Ajax 技术实现三级联动的数据库交互。三级联动是指在一个表单中,选择一个省份,然后根据选择的省份动态加载城市的选项,最后根据选择的...
可能的方法有`connectDB()`建立数据库连接,`executeQuery()`执行SQL查询,`closeConnection()`关闭连接等。 5. **BSTime.java**: 可能包含了时间处理的函数,如计算时间差、时间格式化等。除了`Date`类,Java 8...
数据库连接池,是一种相当实用的应用程序。它可以保存、维护及创建用户所需的数据库连接。从而使得用户得到一个连接的时间降低90%以上。大大提升了数据库访问的反应时间。 这个是一个开源的代码。大家可以修改它、...
Java中的数据库连接是应用程序与数据库交互的基础,而`DBUtil`类是一个常见的工具类,用于封装数据库连接的创建、管理以及执行SQL语句的过程。在Java中,我们通常使用JDBC(Java Database Connectivity)API来实现...
3. 数据源(DataSource):在企业级应用中,通常推荐使用DataSource对象来管理数据库连接,因为它提供了连接池功能,可以有效地管理和复用数据库连接,提高系统性能。 4. 连接数据库的步骤: - 加载驱动:`Class....
在本文中,我们将探讨如何使用Java的动态代理来实现数据库连接池,从而解决传统连接池设计中的耦合度问题和资源管理问题。 首先,数据库连接池是应用程序管理数据库连接的一种高效方式。它通过复用已建立的数据库...
Java JDBC数据库连接池实现方法 Java 数据库连接池是指在 Java 应用程序中对数据库连接的管理和优化,提高数据库访问的效率和性能。 Java 中的数据库连接池可以分为两类:一种是基于应用服务器的连接池,另一种是...