资源简介
用配置文件和工厂模式访问多种数据库
知识点:
1、配置文件
2、log4j
3、工厂模式

代码片段和文件信息
package testConnect;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import java.util.Scanner;
import org.apache.log4j.Logger;
public class connectDatabase {
/**
* @param args
* @throws SQLException
*/
public static void main(String[] args) throws SQLException {
String DBName = ““;// 数据库名
String TableName = ““;// 表名
String[] TableHead = null;// 表头
String Driver = ““;// 驱动名称
String URL = ““;// 数据库路径
String USER = ““;// 用户名
String PWD = ““;// 密码
// SQL语句
String SQL = ““;
// Log4j
Logger logger = Logger.getLogger(connectDatabase.class.getName());
// 读取配置文件
Properties pro = new Properties();
InputStream in = connectDatabase.class
.getResourceAsStream(“..\\Database.properties“);
try {
// 载入配置文件
pro.load(in);
// 数据库名
DBName = (String) pro.getProperty(“DatabaseType“);
logger.debug(“DBName = “ + DBName);
String[] str = DBName.split(““);
for (int i = 0; i < str.length; i++) {
System.out.println((i + 1) + “. “ + str[i]);
}
System.out.println(“请选择要连接的数据库:“);
Scanner input = new Scanner(System.in);
int i = input.nextInt();
DBName = str[i - 1];
// 表名
TableName = (String) pro.get(“TableName“);
logger.debug(“TableName = “ + TableName);
// 表头
String head = (String) pro.get(“TableHead“);
logger.debug(“TableHead = “ + TableHead);
// 转换编码格式
String newhead = new String(head.getBytes(“ISO-8859-1“) “utf-8“);
// 转换成数组
TableHead = newhead.split(““);
// 驱动名
Driver = (String) pro.get(DBName + “Driver“);
logger.debug(“DBDriver = “ + Driver);
// 数据库路径
URL = (String) pro.get(DBName + “URL“);
logger.debug(“DBURL = “ + URL);
// 用户名
USER = (String) pro.get(DBName + “User“);
logger.debug(“DBUSER = “ + USER);
// 密码
PWD = (String) pro.get(DBName + “PWD“);
logger.debug(“DBPassWord = “ + PWD);
} catch (IOException e) {
e.printStackTrace();
}
try {
// 加载驱动
Class.forName(Driver);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
// 定义数据库连接对象
Connection conn = null;
try {
// 打开连接
conn = DriverManager.getConnection(URL USER PWD);
} catch (SQLException e) {
e.printStackTrace();
}
// 定义数据库命令集
Statement stat = null;
try {
// 创建命令
stat = conn.createStatement();
} catch (SQLException e) {
e.printStackTrace();
}
// 定义结果集
ResultSet set = null;
try {
// SQL语句
SQL = “SELECT * FROM “ + TableName;
// 执行SQL语句并返回结果集
set = stat.executeQuery(SQL);
} catch (SQLException e) {
e.printStackTrace();
}
// 打印表头
for (String h : TableHead) {
System.out.print(h + “\t“);
}
System.out.println();
try {
// 打印结果集里的内容
while (set.next()) {
System.out.
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 807 2008-08-15 09:14 connectDataba
文件 391 2008-08-15 08:44 connectDataba
文件 103 2008-08-15 11:38 connectDataba
文件 1010 2008-08-20 08:38 connectDataba
文件 505 2008-08-15 10:02 connectDataba
文件 4725 2008-08-20 08:42 connectDataba
文件 147456 2008-08-15 09:06 connectDataba
文件 719885 2007-08-01 07:08 connectDataba
文件 391834 2007-08-25 00:29 connectDataba
文件 284752 2008-06-28 08:35 connectDataba
文件 64856 2008-06-28 08:35 connectDataba
文件 59865 2008-06-28 08:35 connectDataba
文件 583286 2007-12-13 22:25 connectDataba
文件 19403 2008-08-15 10:02 connectDataba
文件 1010 2008-08-20 08:38 connectDataba
文件 505 2008-08-15 10:02 connectDataba
文件 3534 2008-08-20 08:42 connectDataba
目录 0 2008-08-19 08:48 connectDataba
目录 0 2008-08-15 08:45 connectDataba
目录 0 2008-08-15 08:45 connectDataba
..AD... 0 2008-08-15 08:45 connectDataba
目录 0 2008-08-15 08:49 connectDataba
目录 0 2008-08-15 11:38 connectDataba
目录 0 2008-08-20 08:38 connectDataba
目录 0 2008-08-20 08:39 connectDataba
目录 0 2008-08-15 08:45 connectDataba
目录 0 2008-08-15 08:47 connectDataba
目录 0 2008-08-15 08:49 connectDataba
目录 0 2008-08-15 11:38 connectDataba
----------- --------- ---------- ----- ----
............此处省略2个文件信息
相关资源
- 数据库系统基础教程答案第三版机械
- 软考数据库系统工程师复习资料(完
- MoNyog8.5+破解补丁
- ANSYS LS-DYNA
- 全国4级地址库,京东数据
- 一个超简单的企业管理系统(带ACCE
- 数据库课设:图书管理系统报告
- 合同管理系统的源代码(附数据库)
- zen_cart_1.3.9h_ 配置文件优化
- J2EE 配置文件
- ado数据库MFC图书管理系统vs2010
- 数据库VFP课程设计
- 数据库实现学生成绩管理系统选课管
- 排队机叫号 源代码
- Access数据库在线编辑器
- Php 导出数据为EXCEL程序
- 人大金仓数据库系统表
- 模拟ATM柜员机系统--连接数据库
- 用工厂模式开发多数据库连接类
- 图片存储到数据库保存二进制文件并
- 数据库水印嵌入提取数据库水印数据
- 数据库课程设计以及指导思想
- 加班网上管理 单位
- 数据库课程设计报告(关于房地产销
- Source Insight 3.5 配置文件
- 数据库课程设计(改改直接交)
-
将数据库的表生成xm
l文件 - Ajax定时读取数据库(源代码发布)
- 浪潮数据库结构
- 数据库查询优化算法
评论
共有 条评论