资源简介
用配置文件和工厂模式访问多种数据库
知识点:
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个文件信息
相关资源
- 数据库课程设计包含数据库 程序 实验
- 数据库课程设计——汽车销售管理系
- 汽车维修管理系统\\汽车维修管理系统
- ORL人脸数据库多格式
- 数据库原理及应用教程第3版-PPT课件
- 数据库之间进行数据迁移代码
- 《数据库系统概念》笔记、部分课后
- Openbravo数据库关系表
- 整理全版-术语表近20万数据.xlsx
- 扫雷游戏源代码.rar含数据库
- 全国计算机等级考试三级数据库真题
- struts1的简单demo含数据库
- 数据库系统概论第四版PPT课件
- 数据库原理与应用[高凯][电子教案]
- Labview数据库工具包
- 东北大学计算机学院数据库实验
- 汽车租赁管理系统+数据库
- 《数据库原理及技术》期末试卷.rar
- 仓库管理系统源码附加数据库[评价可
- tomcat集群配置文件
- 学生学籍信息管理 数据库课程设计源
- 图书销售管理系统数据库源码都有
- 机器学习-MIT行人检测数据库
- 实验数据---数据库系统概论第5版习题
- 三层架构酒店管理系统带数据库
- Yale Face人脸表情数据库
- 数据库课程设计--图书销售系统
- 全国POI数据库
-
Source Insight 4.0 仿SolarizedDark主题xm
- MyQQ项目源代码(有现成的源代码、数
评论
共有 条评论