Spring在第三方依赖包中包含了两个数据源的实现类包,其一是Apache的DBCP,其二是 C3P0。可以在Spring配置文件中利用这两者中任何一个配置数据源。
第一种配置: Apache的DBCP需要导入两个包: commons-pool.jar 和commons-dbcp.jar 配置代码如下
下面是根据资源文件配置数据源的 所以必须在classpath下面建立
dbConnection.properties资源文件
内容如下:
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.1.161/sanco
jdbc.username=sancoweb
jdbc.password=sancoweb
<!-- 读取配置文件利用org.springframework.beans.factory.config.PropertyPlaceholderConfigurer 注意id name都是已经定义好的-->
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>classpath:dbConnection.properties</value>
</property>
</bean>
<!-- 定义数据源 从配置文件中取出 驱动 连接字符串 用户名 密码 注意此时要导入几个包-->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" >
<property name="driverClassName">
<value>${jdbc.driverClassName}</value>
</property>
<property name="url">
<value>${jdbc.url}</value>
</property>
<property name="username">
<value>${jdbc.username}</value>
</property>
<property name="password">
<value>${jdbc.password}</value>
</property>
</bean>
如果不需要资源文件就直接可以通过:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" >
<property name="driverClassName">
<value> com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value> jdbc:mysql://192.168.1.161/sanco</value>
</property>
<property name="username">
<value> sancoweb </value>
</property>
<property name="password">
<value> sancoweb </value>
</property>
</bean>
BasicDataSource提供了close()方法关闭数据源,所以必须设定destroy-method=”close”属性, 以便Spring容器关闭时,数据源能够正常关闭。除以上必须的数据源属性外,还有一些常用的属性:
defaultAutoCommit:设置从数据源中返回的连接是否采用自动提交机制,默认值为 true;
defaultReadOnly:设置数据源是否仅能执行只读操作, 默认值为 false;
maxActive:最大连接数据库连接数,设置为0时,表示没有限制;
maxIdle:最大等待连接中的数量,设置为0时,表示没有限制;
maxWait:最大等待秒数,单位为毫秒, 超过时间会报出错误信息;
validationQuery:用于验证连接是否成功的查询SQL语句,SQL语句必须至少要返回一行数据,如你可以简单地设置为:“select count(*) from user”;
removeAbandoned:是否自我中断,默认是 false ;
removeAbandonedTimeout:几秒后数据连接会自动断开,在removeAbandoned为true,提供该值;
logAbandoned:是否记录中断事件, 默认为 false;
第二种配置数据源的方式:
C3P0是一个开放源代码的JDBC数据源实现项目,它在lib目录中与Hibernate一起发布,实现了JDBC3和JDBC2扩展规范说明的Connection 和Statement 池。C3P0类包位于<SPRING_HOME>c3p0-0.9.0.4.jar。下面是使用C3P0配置一个Oracle数据源:
分享到:
相关推荐
### Spring 数据源配置详解 #### 一、Spring与数据源简介 在Java企业级应用开发中,数据库操作是必不可少的一部分。Spring框架作为一种流行的轻量级Java应用开发框架,提供了强大的数据库访问支持,其中包括对数据...
下面将详细讲解Spring配置数据源的相关知识点。 首先,我们来了解一下什么是数据源(DataSource)。数据源是Java中用于管理数据库连接的接口,它能够有效地管理和释放数据库连接,提高系统的性能和资源利用率。...
Spring框架作为一个强大的IoC(Inversion of Control)和AOP(Aspect Oriented Programming)容器,提供了多种配置数据源的方式,其中包括通过JNDI(Java Naming and Directory Interface)来查找和配置数据源。...
本文将详细介绍Spring配置数据源的三种常见方式:`DriverManagerDataSource`、`Apache Commons DBCP`(BasicDataSource)以及通过`JNDI`查找数据源。 1. **DriverManagerDataSource** `DriverManagerDataSource`是...
连接MYSQL数据库,SPRING配置文件示例。
2. 配置数据源 在`application.yml`或`application.properties`文件中,为每个数据源定义配置: ```yaml spring: datasource: primary: # 主数据源 driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:...
Spring多数据源配置,支持mysql、oracle等多个数据源同时存在的情况
- 在Spring配置中,声明`DataSourceTransactionManager`,并指定使用的`DataSource`。 - 实现策略类,用于决定当前应该使用哪个数据源。这通常涉及在运行时获取上下文信息。 5. **动态切换数据源**: 通过自定义...
在开发企业级应用程序时,有时我们需要连接到不止一个数据库,比如主从数据库分离、读写分离、多租户系统等场景...记住,正确管理和配置数据源对于系统的稳定性和性能至关重要,因此在实际操作时一定要仔细检查和测试。
在Spring框架中,数据源(DataSource)的配置是应用程序与数据库交互的核心部分。Spring支持多种数据源配置方式,包括基本的JDBC数据源、连接池数据源以及事务管理策略等。下面将详细介绍Spring中常见的数据源配置...
### Spring MVC 中配置多数据源详解 在Spring框架中配置多数据源的需求比较常见,尤其在需要处理不同类型的数据库或需要实现数据隔离的应用场景中。本文将详细介绍如何在Spring MVC项目中配置并使用多数据源。 ###...
总结,Spring配置数据源的方式多样,可以根据项目需求选择合适的方法。通过属性文件读取数据库连接信息,可以方便地管理和更新数据库配置,同时避免硬编码,提高代码的可维护性。在实际开发中,根据业务场景选择单数...
用SPRING管理数据源,数据库为oracle
为了保护这些敏感信息不被非法访问或篡改,我们可以对Spring配置文件进行加密处理。本文将深入探讨如何在Java环境中,利用TE网络技术实现Spring配置文件的加密。 首先,我们需要理解Spring配置文件的基本结构。...
阐述spring的数据源配置
1. **配置多数据源**:Spring Boot提供了DataSourceAutoConfiguration,它允许我们配置多个数据源。每个数据源可以有自己的配置,如JDBC连接池、数据库驱动、URL、用户名和密码等。我们可以使用@...
本文将深入探讨如何在SpringBoot项目中配置多数据源,并实现数据源的动态切换,帮助你理解和掌握这一核心技能。 首先,我们理解"多数据源"的概念。在SpringBoot应用中,多数据源意味着系统能够连接并操作多个不同的...
然而,有时我们可能希望在非Web环境下或不使用JNDI的情况下配置数据源,这时我们需要在Spring的配置文件中等价地实现JNDI的数据源配置。以下是如何在Spring中进行这种转换的详细步骤和知识点: 1. **理解JNDI配置**...
Spring提供了多种方式来获取和配置数据源,使得开发者可以方便地进行数据库操作。下面将详细介绍Spring如何获取数据源以及其相关知识点。 1. **Spring数据源类型** - **BasicDataSource**: Spring内置的`org....
当配置了多个数据源时,我们需要为每个数据源创建一个DataSourceTransactionManager实例,并在Spring配置文件中指定对应的Data Source。 2. **AbstractRoutingDataSource**:这是一个抽象的数据源类,它可以根据...