这是我的web.xml<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">

<display-name>SpringMailPhoneService</display-name> <context-param>
<param-name>contextConfigLocation</param-name>
<param-value> 
         classpath:/bean.xml
        </param-value>
</context-param> <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>bean.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:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <context:annotation-config />
<context:component-scan base-package="com.ums.presys" /> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:LEAKEY">
</property>
<property name="username" value="scott"></property>
<property name="password" value="tiger"></property>
</bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property>
</bean> <!--============================== 定时操作 ============================== --> <bean id="SchedulerFactory"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="searchAndSendTrigger" />
</list>
</property>
</bean> <bean id="searchAndSendScheduler" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<value>com.ums.presys.scheduler.SearchAndSend</value>
</property>
</bean>           <bean id="searchAndSendTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="searchAndSendScheduler"></property>
<property name="cronExpression">
<value>10 17 03 * * ?</value>
</property>
</bean>
debug的时候messageService还是空@Component
public class SearchAndSend extends QuartzJobBean{
private MessageService messageService;

@Resource
public void setMessageService(MessageService messageService) {
this.messageService = messageService;
} @Override
protected void executeInternal(JobExecutionContext arg0)
throws JobExecutionException {
messageService.sendMessage();
}
}
@Component
public class MessageService {
private MessageDao messageDao; @Resource
public void setMessageDao(MessageDao messageDao) {
this.messageDao = messageDao;
}

public void sendMessage(){
List<Message> listMessages = messageDao.selectMessages();
for (Message message : listMessages) {
System.out.println(message);
}
}
}

解决方案 »

  1.   

        @Resource
        private MessageDao messageDao;
      

  2.   

    @Resource默认按名字注入,
    @Autowair默认按类型注入
      

  3.   

    你写反了  @Resource放在上边
    @Resource
    private MessageService messageService;
        
       
      

  4.   

    你的MessageDao的实现类有没有加上@Component,MessageService必须写成接口,然后去实现,我记得spring必须是一接口,一实现类
      

  5.   

    那就是像楼上说的,你的@Resource注释是在接口上的,不是实现类,用接口的实现对调用。
      

  6.   

    我觉得注释没有问题的,因为我之前也做过,不过是spring2.5.6的版本的,这次就怪了。
      

  7.   

    oracle服务都没有启动datasource也没有报错,控制台什么问题都没有
      

  8.   

    http://115.com/file/c24grmpw  下载地址
      

  9.   

    是实体类需要配置targ什么config的配置,annotation就不太了解了。
      

  10.   

       @Repository 持久层
       @Service 业务层
       @Controller 控制层
      

  11.   

    好吧 已经知道答案了。。
    http://blog.csdn.net/yyykason/article/details/1869577 看看这篇文章吧