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>