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>