不会吧,用Spring线程也能注入啊?

解决方案 »

  1.   

    我只用VC++写过远程线程插入,Java应该不能吧~!
      

  2.   

    我在spring注入 的类里面要生成多个线程, 每给线成要调用 spring给注入的dao,怎么处理呢?
      

  3.   

    public interface DAOInterface
    {
    public void service();
    }
    //这是你的dao
    public class DAO implements DAOInterface
    {
    public void service() {
    //这里实现你的 DAO 层服务方法
    }
    }
    // 这是你的线程类
    public class YourThread implements Runnable
    {
    DAOInterface daoInterface=null;


    public DAOInterface getDaoInterface() {
    return daoInterface;
    } //这里用于 Spring 注入
    public void setDaoInterface(DAOInterface daoInterface) {
    this.daoInterface = daoInterface;
    }
    public void run() {
    //do Something...
    //这里调用你的 Dao方法
    daoInterface.service();
    }

    }
    //这是你说的 Spring 注入的类
    public class DestClass {
    Runnable yourThread=null; public Runnable getYourThread() {
    return yourThread;
    }
    //这里用于 Spring 注入
    public void setYourThread(Runnable yourThread) {
    this.yourThread = yourThread;
    }

    public void otherService()
    {
    //...这里创建线程,并启动
    Thread thread1=new Thread(yourThread);
    thread1.start();
    }
    }
    ================== applicationContext.xml ====================
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>
    <bean id="dao" class="package.DAO"/>
    <bean id="yourThread" class="package.YourThread">
    <property name="daoInterface" ref="dao"/>
    </bean>
    <bean id="destClass" class="package.DestClass">
    <property name="yourThread" ref="yourThread"/>
    </bean>
    </beans>
    我只能告诉你思路~!