我现在在做一个东西,想在每天的特定时间运行,然后根据已定义好的模型中(主要是前台方面,他已经进行了一些SQL语句的拼接)按照前台的条件从数据库分析数据,分析后插入到数据库中相应的表,想做成一个服务,没有头绪,谁能指导一下,越详细越好.详细到具体的技术,分层,几个文件。如何做。最好了。。谢谢 了

解决方案 »

  1.   

    定时服务!
    JAVA Timer
    Quartz
    EJB Timer
    根据你的需求,选择适应的定时服务实现!
      

  2.   

       先谢谢WOMING66能不能不用EJB的东东,换点比较容易的框架实现?
     然后能不能详细些
      

  3.   


    不用EJB Timer的还有JAVA Timer,Quartz,要根据你的需求来选择框架,如果你的处理比较复杂建议你用quartz,如果你的服务比较简单就直接用JDK的 timer,
    JDK的 timer你可以参考jdk文档,quartz网上的例子很多,你可以去找一找。最后这个定时服务都可以和spring整合!
      

  4.   

           我用JDK的timer,那样主要是实现定时服务的问题,我如何能将定时服务和对数据库进行操作的程序结合起来?
         timer到时就调用对数据库进行操作的程序的类?
      能不能在具体点呢。?  我很菜。希望多讲点。麻烦各位了。
         拜谢
      

  5.   

    JDK Timer比较简陋,我还没在项目中用过它,我有个quartz测试的例子发给你吧
    public class SpringJob extends QuartzJobBean { private UserDao userDao;

    @Override
    protected void executeInternal(JobExecutionContext arg0)
    throws JobExecutionException {

    User user = new User();
    user.setUsername("quartzdd");
    user.setPassword("1234");
    userDao.addUser(user);

    } public void setUserDao(UserDao userDao) {
    this.userDao = userDao;
    }
    } <bean id="userDao" class="com.zzq.quartz.dao.impl.UserDaoImpl">
    <property name="sessionFactory" ref="sessionFactory"/>
    </bean> <bean name="myJob" class="org.springframework.scheduling.quartz.JobDetailBean">
    <property name="jobClass" value="com.zzq.quartz.spring.job.SpringJob" />
      <property name="jobDataAsMap">
        <map>
          <entry key="sessionFactory" value-ref="sessionFactory" />
          <entry key="userDao" value-ref="userDao" />
        </map>
     </property>
    </bean> <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
        <property name="jobDetail" ref="myJob" />
        <!-- run every morning at 6 AM -->
        <property name="cronExpression" value="0 0 6 * * ?" />
    </bean>


    <bean id="startQuertz" lazy-init="false"  class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
            <list>
                <ref bean="cronTrigger" />
            </list>
        </property>
    </bean>
      

  6.   

      谢谢woming66。不过你的quertz需要配置什么吗?配置比较简单的话我去网上找下资料看看吧。
     谢谢你的关注。。非常感谢
     
      

  7.   

    你的这个需求,其实最好实现的就是定时处理了。
    无论是Windows操作系统,还是Linux操作系统,都有现成的工具可以完成。Windows里有计划任务,Linux里有cron。如果你要用java定时器来做的话,你必须完成定时处理的代码,而且你的PG必须时时刻刻运行在你的机器上,你还要设置这个PG开机启动。而用计划任务或者cron的话,完全不用管这个。你可以将所有的精力投入到你要解决的事情上去。
    前台把检索条件发给你,你拼接SQL,然后处理检索结果,最后插入到数据库。好像每一步都挺简单的吧???