配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans
省略。。。。
">
<!--自动声明-->
<context:annotation-config />
<!-- 使用annotation 自动注册bean,并检查@Required,@Autowired的属性已被注入 -->
<context:component-scan base-package="com.et.service" />
<context:component-scan base-package="com.et.repository" />
<context:component-scan base-package="com.et.dao.impl"/>
<context:component-scan base-package="test"/>
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:override.properties</value>
</list>
</property>
</bean>
<bean id="proxoolDataSource1" class="org.logicalcobwebs.proxool.ProxoolDataSource">
<property name="driver" value="${jdbc.connection.driverClassName}"/>
<property name="driverUrl" value="${dataSource.url1}"/>
<property name="user" value="${dataSource.username1}"/>
<property name="password" value="${dataSource.password1}"/>
<!-- 测试的SQL执行语句 -->
<property name="houseKeepingTestSql" value="${proxool.houseKeepingTestSql}"/>
<!-- 最少保持的空闲连接数 (默认2个) -->
<property name="prototypeCount" value="${proxool.prototypeCount}"/>
<!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁 默认30秒) -->
<property name="houseKeepingSleepTime" value="${proxool.hourseKeepingSleepTime}"/>
<!-- 最大活动时间(超过此时间线程将被kill,默认为5分钟) -->
<property name="maximumActiveTime" value="${proxool.maximumActiveTime}"/>
<!-- 连接最长时间(默认为4个小时) -->
<property name="maximumConnectionLifetime" value="${proxool.maximumConnectionLifetime}"/>
<!-- 最小连接数 (默认2个) -->
<property name="minimumConnectionCount" value="${proxool.minimumConnectionCount}"/>
<!-- 最大连接数 (默认5个) -->
<property name="maximumConnectionCount" value="${proxool.maximumConnectionCount}"/>
<!-- -->
<property name="statistics" value="${proxool.statistics}"/>
<!-- 别名 -->
<property name="alias" value="${proxool.m.alias1}"/>
<!-- -->
<property name="simultaneousBuildThrottle" value="${proxool.simultaneous-build-throttle}"/>
</bean>
<!-- 配置SimpleJdbcTemplate 0级数据源-->
<bean id="jdbcTemplateMiddle" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg ref="proxoolDataSource1"></constructor-arg>
</bean>
<task:annotation-driven /> <!-- 定时器开关-->
<bean id="taskSchedule" class="com.et.service.WebJobService"></bean>
<task:scheduled-tasks>
<task:scheduled ref="taskSchedule" method="makeMultipleTask" cron="${cron.onStarWeek}" />
</task:scheduled-tasks>
</beans>
mian :
package test;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;
import com.et.entity.TaskDependList;
@Repository
public class test {
@Autowired
private static JdbcTemplate jdbcTemplateMiddle;
public static void main(String[] args) {
// ApplicationContext context = new
// ClassPathXmlApplicationContext("applicationContext.xml");
// JdbcTemplate jt = (JdbcTemplate)
// context.getBean("jdbcTemplateMiddle");
// int count = jt.queryForInt("select count(*) from TASK_DEPEND_LIST");
// System.out.println(count);
//上面这个方法成功输出
if(jdbcTemplateMiddle==null){
System.out.println("jdbc 为null"); //这里总是输出null
}else{
System.out.println("成功");
}
}
}
那个配置文件执行了哈,还有就是jdbcTemplateMiddle点什么方法都是空指针。
你的回答错了
// JdbcTemplate jt = (JdbcTemplate) context.getBean("jdbcTemplateMiddle");
大虾,你把这句话注释了,没有赋值bean对象当然是null呀,,
看清楚在回答好不好,大侠
把 static 去掉就对了,静态的注入不了