spring配置一个简单的数据连接池(dbcp)

1.文件结构



 

2.包结构



 3.spring.xml

<?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:util="http://www.springframework.org/schema/util"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.1.xsd">

	
	<bean
		class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="locations">
			<value>classpath:datasource.properties</value>
		</property>
	</bean>
	
	 <!-- the DataSource (parameterized for configuration via a PropertyPlaceHolderConfigurer) -->
     <bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource">
         <property name="driverClassName" value="${DATABASE.DriverClassName}"/>
         <property name="url" value="${DATABASE.URL}"/>
         <property name="username" value="${DATABASE.UserName}"/>
         <property name="password" value="${DATABASE.Password}"/>
     </bean>
     
     
     <bean id="jdbcTest" class="com.lr.spring.JdbcTest">
         <property name="dataSource" ref="dataSource"/>
     </bean>

</beans>

 4.相关类代码:

package com.lr.spring;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestSpring {
	private static ApplicationContext context;
	static {
		context = new ClassPathXmlApplicationContext("com/lr/spring/beans.xml");
	}

	/**
	 * @param args
	 * @throws SQLException
	 */
	public static void main(String[] args) throws SQLException {
		JdbcTest jdbc = (JdbcTest) context.getBean("jdbcTest");
		Connection connection = jdbc.getDataSource().getConnection();
		Statement statement = connection.createStatement();
		ResultSet rs = statement
				.executeQuery("select * from tableName ");
		while (rs.next()) {
			System.out.println(rs.getString("crawl_date") + "\t"
					+ rs.getString("count"));
		}
		statement.close();
		connection.close();
		jdbc.getDataSource().close();
	}

}

//
package com.lr.spring;

import org.apache.commons.dbcp.BasicDataSource;

public class JdbcTest {
	private BasicDataSource dataSource;

	public BasicDataSource getDataSource() {
		return dataSource;
	}

	public void setDataSource(BasicDataSource dataSource) {
		this.dataSource = dataSource;
	}
	
}

 5.datasource.properties

DATABASE.URL=jdbc:oracle:thin:@10.0.*.*:*:*
DATABASE.DriverClassName=oracle.jdbc.driver.OracleDriver
DATABASE.UserName=******
DATABASE.Password=*****

 6.log4j.xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
    <Appenders>
        <Console name="STDOUT" target="SYSTEM_OUT">
            <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Logger name="com.opensymphony.xwork2" level="debug"/>
        <Logger name="org.apache.struts2" level="debug"/>
        <Root level="warn">
            <AppenderRef ref="STDOUT"/>
        </Root>
    </Loggers>
</Configuration>

猜你喜欢

转载自happyprince.iteye.com/blog/2256395
今日推荐