一、关系型数据源
1、动态数据源
动态管理数据源的基本功能:数据源加载,容器维护,持久化管理。
2、关系型数据库
不同厂商的关系型数据库,提供的链接方式,驱动包,驱动类名都是不一样的,Java数据库连接API,JDBC是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法,且适配大部分关系型数据库。
3、适配要素
核心要素:驱动包、驱动类名、URL格式、默认端口。
关系型数据库很多,这里一定是不全的,根据需要自行完善即可。
public enum DataSourceType {
MySql("MySql", "com.mysql.jdbc.Driver"),
Oracle("Oracle", "oracle.jdbc.OracleDriver"),
DB2("DB2", "com.ibm.db2.jcc.DB2Driver");
private String dataSourceName;
private String driverClassName;
public static String getDriver (String dataSourceName) {
DataSourceType[] types = DataSourceType.values();
for (DataSourceType type : types) {
if (type.getDataSourceName().equals(dataSourceName)) {
return type.getDriverClassName();
}
}
return null;
}
DataSourceType (String dataSourceName,String driverClassName){
this.dataSourceName = dataSourceName ;
this.driverClassName = driverClassName ;
}
}
4、JDBC基础API
DriverManager
管理JDBC驱动程序的基本服务API。调用方法Class.forName,显式地加载驱动程序类,正好适用于动态数据源的业务场景,数据源类型未知情况。加载Driver类并在DriverManager类注册后,即可用来与数据库建立连接。
DataSource
DataSource接口,由驱动程序供应商实现,负责建立与数据库的连接,当在应用程序中访问数据库时,常用于获取操作数据的Connection对象。
Connection
Connection接口代表与特定的数据库的连接,要对数据库数据进行操作,首先要获取数据库连接,Connection实现就像在应用程序中与数据库之间开通了一条通道,通过DriverManager类或DataSource类都可获取