在线客服:
凤凰体育 凤凰体育
全国服务热线:010-53193650
您的位置:首页 > 新闻中心 >

数据源的定义和配置

浏览 104次 来源:【jake推荐】 作者:-=Jake=-    时间:2021-03-29 13:39:21
[摘要] 对数据源的描述。在Spring中,你不但可以通过JNDI获取应用服务器的数据源,也可以直接在Spring容器中配置数据源,此外,你还可以通过代码的方式创建一个数据源,以便进行无依赖的单元测试配置一个数据源。可以在Spring配置文件中利用这两者中任何一个配置数据源。下面是使用DBCP配置MySql数据源的配置片断:除以上必须的数据源属性外,还有一些常用的属性:

数据源是指数据库应用程序使用的数据库或数据库服务器。

数据源,顾名思义,数据源是提供某些必需数据的设备或原始媒体。用于建立数据库连接的所有信息都存储在数据源中。就像可以通过指定文件名在文件系统中找到文件一样,可以通过提供正确的数据源名称来找到相应的数据库连接。

中文名称数据源外国名称数据源

内容

1个类别

2个属性

3名

4个数据包

■DBCP

■C3P0

▪ODBC

分类编辑

信息系统的数据源必须可靠并且能够更新。常用的数据源有:①观测数据乐鱼体育网 ,即当场获得的测量数据。它们包括现场勘测,测量数据,站点的观测记录数据和遥测。数据等。②分析测量数据,即使用物理和化学方法分析和测量数据。 ③图形数据,各种地形图和专题图等。④统计调查数据,各种统计报告,社会调查数据等。⑤遥感数据,从地面,空中或空间遥感获得的数据。中国拥有大量的数据源。如:全国土地资源清查和详细的勘查数据,航空摄影图像和土地勘测卫星数据已经覆盖了全国,定位和半定位观测站网络遍布全国,有大量的数据如地面勘测,地图测量和制图。

上面提到的数据源示例只是一小部分。实际上,数据源可以是任何数据类型。

属性编辑

databaseName字符串数据库的名称,即数据库的SID。 dataSourceName String数据源接口实现类的名称。 description字符串数据源的描述。 networkProtocol字符串用于与服务器通信的网络协议的名称。 password字符串用户登录密码。 portNumber数据库服务器使用的端口。 serverName字符串数据库服务器名称。 user String用户登录名。

如果数据是水,则数据库是水库,数据源是连接水库的管道,最终用户看到的数据集是从管道中流出的水。

名称修改

数据源名称(DSN)是一种数据结构,其中包含有关特定数据库的信息。此信息对于打开的数据库连接驱动程序连接到数据库是必需的。 DSN存储在注册表中或作为单独的文本文件存储。 DSN中包含的信息包括名称,目录和数据库驱动器,以及用户ID和密码(根据DSN的类型)。开发人员为每个数据库创建一个独立的DSN。为了连接到数据库,开发人员需要在程序中指定DSN。相反,没有DSN的连接需要在程序中指定所有必要的信息。

有三种类型的DSN:用户DSN(有时称为计算机DSN)乐鱼体育 ,系统DSN和文件DSN。用户和系统DSN都根据特定的计算机而有所不同,并且DSN信息存储在注册表中。用户DSN允许单个用户访问单台计算机上的数据库,而系统DSN允许计算机上的多个用户访问数据库。文件DSN将相关信息存储在扩展名为.DSN的文本文件中,并且可以由安装了相同驱动器的不同计算机上的多个用户共享。

注意:DSN还是Deep Space Network的缩写。

数据包编辑

无论采用哪种持久性技术,都必须通过数据连接来访问数据库。在Spring中,数据连接是通过数据源获得的。在以前的应用程序中,数据源通常由Web应用程序服务器提供。在Spring中,您不仅可以通过JNDI获取应用程序服务器的数据源乐鱼体育网 ,还可以在Spring容器中直接配置数据源。此外,您还可以通过代码创建数据源以配置非依赖性单元测试。数据源。

Spring在第三方依赖项程序包中包含两个数据源实现程序包,一个是Apache的DBCP,另一个是C3P0。您可以在Spring配置文件中使用这两个配置数据源之一。

DBCP

DBCP类软件包位于/lib/jakarta-commons/commons-dbcp.jar中。 DBCP是一个数据库连接池,它依赖于Jakarta commons-pool对象池机制,因此/ lib / jakarta-commons必须包含在类路径/commons-pool.jar中。以下是使用DBCP来配置MySql数据源的配置摘要:

xml代码

BasicDataSource提供了close()方法来关闭数据源,因此必须设置destroy-method =“ close”属性,以便在关闭Spring容器时可以正常关闭数据源。除了上述必需的数据源属性外,还有一些常用属性:

defaultAutoCommit:设置从数据源返回的连接是否使用自动提交机制,默认值为true;

defaultReadOnly:设置数据源是否只能执行只读操作,默认值为false;

maxActive:最大数据库连接数凤凰彩票登录 ,当设置为0时,表示没有限制;

maxIdle:等待连接的最大数量,设置为0时,表示没有限制;

maxWait:要等待的最大秒数(以毫秒为单位),如果超过该时间,则会报告一条错误消息;

validationQuery:用于验证连接成功的查询SQL语句。 SQL语句必须至少返回一行数据。例如,您可以简单地将其设置为:“从用户中选择count(*)”;

removeAbandoned:是否自行中断,默认为false;

removeAbandonedTimeout:几秒钟后,数据连接将自动断开。当removeAbandoned为true时提供此值;

logAbandoned:是否记录中断事件,默认为false;

C3P0

C3P0是一个开源JDBC数据源实现项目,它与Hibernate一起在lib目录中发布,并实现JDBC3和JDBC2扩展规范所描述的连接和语句池。 C3P0软件包位于/ lib / c3p0 / c3p0- 0. 9. 0. 4. jar中。以下是使用C3P0来配置Oracle数据源:

xml代码

ComboPooledDataSource与BasicDataSource一样,提供了一个close()方法来关闭数据源,以便我们可以确保在Spring容器关闭时可以成功释放数据源。

C3P0具有比DBCP更丰富的配置属性。通过这些属性,可以对数据源进行各种有效的控制:

以上数据来源于 英文_数据分析员 英文_数据源 英文

acquireIncrement:连接池中的连接用完时,C3P0一次创建的新连接数;

acquireRetryAttempts:定义从数据库获取新连接失败后重复获取尝试的次数,默认值为30;

acquireRetryDelay:两个连接之间的时间数据源 英文,以毫秒为单位,默认为1000;

autoCommitOnClose:关闭连接后,默认情况下会回滚所有未提交的操作。默认值为false;

automaticTestTable:C3P0将构建一个名为Test的空表,并使用其自己的查询语句进行测试。如果定义了此参数,则将忽略属性preferredTestQuery。您无法对此测试表执行任何操作,它将用于C3P0测试,默认为null;

breakAfterAcquireFailure:无法获取连接将导致所有等待获取连接的线程引发异常。但是,数据源仍然有效保留数据源 英文,并且下次调用getConnection()时,它将继续尝试获取连接。如果设置为true,则在尝试获得连接失败后,将声明数据源已断开连接并永久关闭。默认值为false;

checkoutTimeout:当连接池用完时,客户端调用getConnection()等待时间来获取新连接。超时后,将抛出SQLException。如果设置为0,它将无限期等待。单位为毫秒,默认为0;

connectionTesterClassName:通过实现ConnectionTester或QueryConnectionTester类来测试连接,该类名需要设置为标准名称。默认值为com.mchange.v 2. C3P 0. impl.DefaultConnectionTester;

idleConnectionTestPeriod:检查所有连接池中空闲连接的秒数,默认值为0表示不检查;

initialPoolSize:初始化期间创建的连接数,应在minPoolSize和maxPoolSize之间。默认值为3;

数据分析员 英文_以上数据来源于 英文_数据源 英文

maxIdleTime:最大空闲时间,超过空闲时间的连接将被丢弃。如果它是0或负数,它将永远不会被丢弃。默认值为0;

maxPoolSize:连接池中保留的最大连接数。默认值为15;

maxStatements:JDBC标准参数,用于控制数据源中加载的PreparedStatements的数量。但是,因为预缓存的语句属于单个Connection而不是整个连接池。因此设置此参数需要考虑许多因素。如果maxStatements和maxStatementsPerConnection均为0,则关闭缓存。默认值为0;

maxStatementsPerConnection:连接池中单个连接拥有的缓存语句的最大数量。默认值为0;

numHelperThreads:C3P0是异步操作,并且慢速JDBC操作通过帮助程序过程完成。扩展这些操作可以有效地提高性能,并且可以通过多线程同时执行多个操作。默认值为3;

preferredTestQuery:定义要为所有连接测试执行的测试语句。使用连接测试时,此参数可以显着提高测试速度。测试表必须在初始数据源时存在。默认为空;

propertyCycle:用户修改系统配置参数之前要等待的最大秒数。默认值为300;

testConnectionOnCheckout:由于性能消耗大,请仅在需要时使用它。如果设置为true,则将在提交每个连接时验证其有效性。建议使用idleConnectionTestPeriod或automaticTestTable

和其他方法来改善连接测试的性能。默认值为false;

testConnectionOnCheckin:如果设置为true,则在获得连接时将检查连接的有效性。默认值为false。

ODBC

ODBC(开放式数据库连接,开放式数据库连接)是Microsoft的开放服务体系结构(WOSA,Windows开放服务体系结构)中数据库的组成部分。它建立了一组规范,并提供了一组数据库标准API(应用程序编程接口)供访问。这些API使用SQL完成大部分任务。 ODBC本身也提供对SQL语言的支持,用户可以直接将SQL语句发送到ODBC。一组数据的位置,可以使用ODBC驱动程序进行访问。 [1]

老王
本文标签:c3p0,大数据,连接池

推荐阅读

最新评论