spring 配置文件中dbcp连接池,jdbc连接池 引入 配置文件properties,但是不能用$符号引用里面的变量问题

spring 配置 注意红色字体 (1)懒加载要设为true,(2)引入配置文件  注意不能懒加载不能设为false,否则$不能引入配置文件中的变量

第一种配置 jdbc连接池

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:jdbc="http://www.springframework.org/schema/jdbc"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="
     http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
     http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
     http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd
     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"
	<span style="color:#ff0000;">default-lazy-init="true"</span>>
<span style="color:#ff0000;"><context:property-placeholder ignore-resource-not-found="false" ignore-unresolvable="true" location="classpath:/application.properties" /></span>
	<!-- Tomcat JDBC连接池 -->
	<span style="color:#ff0000;"><bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource" destroy-method="close"></span>
		<property name="driverClassName" value="${jdbc.driver}" />
		<property name="url" value="${jdbc.url}" />
		<property name="username" value="${jdbc.username}" />
		<property name="password" value="${jdbc.password}" />
		<property name="defaultAutoCommit" value="false" />
		<property name="maxActive" value="${jdbc.pool.maxActive}" />
		<property name="maxIdle" value="${jdbc.pool.maxIdle}" />
		<property name="minIdle" value="${jdbc.pool.initialSize}" />
		<property name="initialSize"  value="${jdbc.pool.initialSize}"/>
	   <property name="testWhileIdle"><value>true</value></property>
		<property name="validationQuery"><value>SELECT 1</value></property>
		<property name="validationQueryTimeout"  value="10"/>
		<property name="validationInterval"  value="30000"/>
	</bean>
</beans>

jdbc连接池的 application.properties配置

#mysql database setting dev
jdbc.dbtype=mysql
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1/aaa?useUnicode=true&characterEncoding=utf-8
jdbc.username=aaa
jdbc.password=aaa

jdbc.pool.maxIdle=100
jdbc.pool.maxActive=200
jdbc.pool.minIdle=50
jdbc.pool.initialSize=100

第二种配置 使用dbcp连接池

	<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
	    <property name="locations">
	       <list>
	          <value>classpath:jdbc.properties</value>
	       </list>
	    </property>
	    <property name="fileEncoding" value="utf-8"/>
	</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
		<!-- 加载驱动 -->
		<property name="driverClassName" value="${driverClassName}"></property>
		<!-- 数据库的名字 -->
		<property name="url" value="${jdbc_url}"></property>
		<!-- 用户名密码 -->
		<property name="username" value="${jdbc_username}"></property>
		<property name="password" value="${jdbc_password}"></property>
		<!-- 最大连接数 -->
		<property name="maxActive" value="${jdbc_maxActive}"></property>
		<!-- 最大可空闲 -->
		<property name="maxIdle" value="${jdbc_maxIdle}"></property>
		<!-- 最大等待秒数,单位为毫秒, 超过时间会报出错误信息 -->
		<property name="maxWait" value="${jdbc_maxWait}"></property>
		<!-- 默认自动提交,跟事务有关系,true,每执行就会提交,所以没有事务 -->
		<property name="defaultAutoCommit" value="${jdbc_defaultAutoCommit}"></property>
	</bean>

application.properties配置

hibernate.dialect=org.hibernate.dialect.OracleDialect
driverClassName=oracle.jdbc.driver.OracleDriver
validationQuery=SELECT 1 FROM DUAL
jdbc_url=jdbc\:oracle\:thin\:@211.67.188.189\:1521\:orcl
jdbc_username=jd
jdbc_password=admin
jdbc_maxActive=100000
jdbc_maxIdle=0
jdbc_maxWait=1000
jdbc_defaultAutoCommit=false
时间: 2024-12-20 21:28:51

spring 配置文件中dbcp连接池,jdbc连接池 引入 配置文件properties,但是不能用$符号引用里面的变量问题的相关文章

jdbc连接-用JDBC连接oracle11g时 有如下问题

问题描述 用JDBC连接oracle11g时 有如下问题 djava.lang.ClassNotFoundException: oracle.jbdc.driver.OracleDriver at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findCla

asp.net-vs2012配置文件中配置了一个连接数据库的连接字符串运行后就出现以下几个错误

问题描述 vs2012配置文件中配置了一个连接数据库的连接字符串运行后就出现以下几个错误 我在vs2012配置文件中配置一个数据库的连接字符串,运行后就出现这几个错误 1.未能找到特性"type"的架构信息. 2.未能找到特性"value"的架构信息. 3.未能找到元素"defaultConnectionFactory"的架构信息. 4.未能找到元素"entityFramework"的架构信息. 5.未能找到元素"p

JDBC 连接MySQL实例详解_Mysql

JDBC连接MySQL JDBC连接MySQL 加载及注册JDBC驱动程序 Class.forName("com.mysql.jdbc.Driver"); Class.forName("com.mysql.jdbc.Driver").newInstance(); JDBC URL 定义驱动程序与数据源之间的连接 标准语法: <protocol(主要通讯协议)>:<subprotocol(次要通讯协议,即驱动程序名称)>:<data so

Java中框架的概念,以及从配置文件中读取配置信息并加载指定类

  学了反射后,也不知道反射是干什么的,那学了就没什么用了. 反射在框架中有很重要的作用,什么是框架呢? 大家在做JavaWeb开发的时候 用过JDBC吧,首先上来的时候 我们需要加载JDBC的驱动. Class.forName(...)  //每个不同的驱动对应不同的类名字 对于开发人员来说不同的人选择的驱动程序 不一样 .那么我们就需要不同的驱动类 . 我们是在JSP标签中进行了 这个类的调用,那么相对来说  JSP就是一个框架,而我们加载的这个类就是一个工具. 框架与工具的关系 就是 我们

JNDI简介,jndi在tomcat中的配置,jdbc api简介,java连接数据库服务

连接数据库 JNDI(Java 命名和目录接口)   JNDI(Java 命名和目录接口) 分布式计算环境通常使用命名和目录服务来获取共享的组件和资源.命名和目录服务将名称与位置.服务.信息和资源关联起来.  命名服务提供名称-对象的映射.目录服务提供有关对象的信息,并提供定位这些对象所需的搜索工具.有许多命名和目录服务实现,并且到它们的接口是不同的. Java 命名和目录接口或 JNDI 提供了一个用于访问不同的命名和目录服务的公共接口.请参阅 URL java.sun.com/product

一种简单JDBC连接池的实现(二)

3.简单JDBC连接池的实现 根据第二章中原理机制,Snap-ConnectionPool(一种简单快速的连接池工具)按照部分的JDBC规范,实现了连接池所具备的对数据库资源有效管理功能. 3.1体系描述 在JDBC规范中,应用通过驱动接口(Driver Interface)直接方法数据库的资源.为了有效.合理地管理资源,在应用与JDBC Driver之间,增加了连接池: Snap-ConnectionPool.并且通过面向对象的机制,使连接池的大部分操作是透明的.参见下图,Snap-Conne

请教hibernate在BAE中的数据库连接池长连接问题

问题描述 因为BAE不支持长连接,所以默认的设置虽然在本机上跑的好好的,可是一上传跑了没多久就会出现下面这个错误Causedby:org.hibernate.exception.JDBCConnectionException:couldnotexecutequeryatorg.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:97)atorg.hibernate.exception.JDBCException

连接池用完如何回收到池中,并保证连接池的连接数量

问题描述 哪位可以详细的介绍一下,连接池用完是如何放回池中的,并保证连接池的数量,请详细说一下实现原理,最好有代码,谢谢啦 解决方案 你要自己实现一个连接池?如果不是的话,你也不需要深究其原理,如果你真的想知道的话,那么,你可以去看一下 DBCP 的源码,它是 Tomcat 自带的.其实,它的原理就跟线程池差不多.大概是这个样子的,用一个容器,比如,一个 List,在初始化的时候,就往这个 List 里面存入 10 个 Connection ,然后你需要的话,就从这个 List 中取一个,如果多

spring jdbc 连接错误,急求大神解答

问题描述 spring jdbc 连接错误,急求大神解答 错误信息:java.lang.NoClassDefFoundError: Could not initialize class org.springframework.jdbc.core.StatementCreatorUtils 代码: package com.xiaoming.spring.jdbc.dao; import javax.annotation.Resource; import javax.sql.DataSource;