使用的jar包:
ojdbc14.jar spring-2.5.jar commons-dbcp-1.4.jar
目錄結構ress(source folder)->conff(package)下有app.xml和sys.properties
sys.properties:
jdbc.driverClassName=oracle.jdbc.driver.OracleDriverjdbc.url=jdbc:oracle:thin:@localhost:1521:orcljdbc.username=scottjdbc.password=tiger
app.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:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd" default-autowire="byName" default-lazy-init="true"><!-- 屬性檔案讀入 --><bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="locations"><list><value>classpath*:conff/sys.properties</value></list></property></bean><!--<bean id="mydataSource" class="org.apache.commons.dbcp.BasicDataSource"><property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property><property name="url" value="jdbc:oracle:thin:@localhost:1521:ORCL"></property><property name="username" value="scott"></property><property name="password" value="tiger"></property> </bean> --> <!-- --><bean id="mydataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <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="myJdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource"> <ref bean="mydataSource"/> </property> </bean></beans>
Oratest .java
package oracletest;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Map.Entry;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import org.springframework.jdbc.core.JdbcTemplate;public class Oratest {private JdbcTemplate myJdbcTemplate;private static ApplicationContext applicationContext;private String[] xmlClassPath={"conff/app.xml"};public Oratest(){applicationContext=new ClassPathXmlApplicationContext(xmlClassPath);} public static Object getBean(String beanName){return applicationContext.getBean(beanName);} //getter setterpublic JdbcTemplate getMyJdbcTemplate() {return myJdbcTemplate;}public void setMyJdbcTemplate(JdbcTemplate myJdbcTemplate) {this.myJdbcTemplate = myJdbcTemplate;}@SuppressWarnings("rawtypes")public static void main(String[] args) {Oratest dd=new Oratest();dd.getBean("myJdbcTemplate");String sql="select pass,dd from t1 where pass=?";dd.setMyJdbcTemplate((JdbcTemplate)dd.getBean("myJdbcTemplate"));List list=dd.getMyJdbcTemplate().queryForList(sql, new Object[]{"vv"});System.out.println(list.size());//遍曆listfor(int i=0;i<list.size();i++){Map mm=(Map)list.get(i);//遍曆mapIterator it= mm.entrySet().iterator();while(it.hasNext()){Map.Entry entry=(Map.Entry)it.next();System.out.println("key:"+entry.getKey()+"--value:"+entry.getValue());}}}}
輸出:
- Refreshing
org.springframework.context.support.ClassPathXmlApplicationContext@19fcc69: display name [org.springframework.context.support.ClassPathXmlApplicationContext@19fcc69]; startup date [Mon Oct 17 16:54:57 CST 2011]; root of context hierarchy
- Loading XML bean definitions from class path resource [conff/app.xml]
- Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext@19fcc69]:
org.springframework.beans.factory.support.DefaultListableBeanFactory@5e5a50
- Loading properties file from URL
- Pre-instantiating singletons in
org.springframework.beans.factory.support.DefaultListableBeanFactory@5e5a50: defining beans [propertyConfigurer,mydataSource,myJdbcTemplate]; root of factory hierarchy
2
key:PASS--value:vv
key:DD--value:2011-10-10 16:48:39.0
key:PASS--value:vv
key:DD--value:null