📄 driverutilities.java
字号:
package coreservlets;
import java.io.*;
import java.sql.*;
import java.util.*;
import coreservlets.beans.*;
public class DriverUtilities
{
public static final String MSACCESS="MSACCESS";
public static final String MYSQL="MYSQL";
public static final String MSSQL="MSSQL";
public static final String ORACLE="ORACLE";
protected static Map driverMap=new HashMap();
public static void loadDrivers()
{
String vendor;
String description;
String driverClass;
String url;
DriverInfoBean info=null;
vendor=MSACCESS;
description="MS Access 4.0";
driverClass="sun.jdbc.odbc.JdbcOdbcDriver";
url="jdbc:odbc:[$dbName]";
info=new DriverInfoBean(vendor,description,driverClass,url);
addDriverInfoBean(info);
vendor=MYSQL;
description="MySQL Connector/J 3.0";
driverClass="com.mysql.jdbc.Driver";
url="jdbc:mysql://[$host]:3306/[$dbName]";
info=new DriverInfoBean(vendor,description,driverClass,url);
addDriverInfoBean(info);
vendor=ORACLE;
description="Oracle9i database";
driverClass="oracle.jdbc.driver.OracleDriver";
url="jdbc:oracle:thin:@[$host]:1521:[$dbName]";
info=new DriverInfoBean(vendor,description,driverClass,url);
addDriverInfoBean(info);
vendor=MSSQL;
description="MSSQL Server database";
driverClass="com.microsoft.jdbc.sqlserver.SQLServerDriver";
url="jdbc:microsoft:sqlserver://[$host]:1433;DatabaseName=[$dbName]";
info=new DriverInfoBean(vendor,description,driverClass,url);
addDriverInfoBean(info);
}
public static void addDriverInfoBean(DriverInfoBean info)
{
driverMap.put(info.getVendor().toUpperCase(),info);
}
public static boolean isValidVendor(String vendor)
{
DriverInfoBean info=(DriverInfoBean)driverMap.get(vendor.toUpperCase());
return (info!=null);
}
public static String makeURL(String host,String dbName,String vendor)
{
DriverInfoBean info=(DriverInfoBean)driverMap.get(vendor.toUpperCase());
if(info==null)
{
return null;
}
StringBuffer url=new StringBuffer(info.getURL());
DriverUtilities.replace(url,"[$host]",host);
DriverUtilities.replace(url,"[$dbName]",dbName);
return(url.toString());
}
public static String getDriver(String vendor)
{
DriverInfoBean info=(DriverInfoBean)driverMap.get(vendor.toUpperCase());
if(info==null)
{
return null;
}
else
{
return(info.getDriverClass());
}
}
private static void replace(StringBuffer buffer,String match,String value)
{
int index=buffer.toString().indexOf(match);
if(index>0)
{
buffer.replace(index,index+match.length(),value);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -