`

web服务器启动后执行任务

阅读更多

package com.yun.modules.MyTest;

 

import com.yun.modules.base.ServletInit;

import com.yun.modules.entity.GoodsClassify;

import com.yun.modules.service.GoodsClassifyService;

import com.yun.utils.DateUtils;

import com.yun.utils.HttpRequest;

import com.yun.utils.MD5;

import org.springframework.beans.factory.InitializingBean;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Component;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.context.ServletContextAware;

 

import javax.servlet.ServletContext;

import java.util.Calendar;

import java.util.Date;

import java.util.Timer;

import java.util.TimerTask;

 

import static java.lang.Thread.sleep;

 

/**

 * Created by yun_lian on 2016/10/19.

 * 服务器初始化时完成

 */

@Controller

@RequestMapping(value = "startInit")

public class StartInitTest implements InitializingBean,ServletContextAware {

    @Autowired

    private GoodsClassifyService goodsClassifyService;

 

    /**

     * 处理服务器启动后的数据

     */

    @RequestMapping(value = "test")

    public void initPart(){

        while (true){

            GoodsClassify goodsClassify = new GoodsClassify();

            goodsClassify.setBirthday(new Date());

            goodsClassify.setName(((int)(Math.random()*200)+1)+"号名字");

            goodsClassify.setPassword(MD5.getMD5Str(goodsClassify.getName()));

            goodsClassify.setSex(1);

            goodsClassifyService.save(goodsClassify);

            try {

                sleep(2000);//睡2秒

            } catch (InterruptedException e) {

                e.printStackTrace();

            }

        }

    }

    @Override

    public void afterPropertiesSet() throws Exception {

 

    }

 

    @Override

    public void setServletContext(ServletContext servletContext) {

        TimerTask task = new TimerTask() {

            @Override

            public void run() {

                //处理业务逻辑

                String url = ServletInit.getAdminUrl()+"startInit/test";

                System.out.println(url);

                HttpRequest.sendPost(url,"");

            }

        };

        Timer timer = new Timer();

        Calendar calendar = Calendar.getInstance();

        calendar.add(13,5);//延迟5秒时间

        Date date = calendar.getTime();

        timer.schedule(task, date);

    }

}

 

0
6
分享到:
评论

相关推荐

    JAVA项目服务器启动时自启动指定的Servlet,并定时执行任务

    在这个例子中,我们在`init()`方法中创建了一个`ScheduledExecutorService`实例,并设置了一个定时任务,它将在服务器启动后每小时执行一次。在`destroy()`方法中,我们关闭了`executor`以释放资源。 总结,通过在`...

    一个简单的web服务器编程实例

    Web服务器主要任务是接收来自客户端(如浏览器)的HTTP请求,解析请求中的信息,如URL、HTTP方法(GET、POST等),然后根据请求内容执行相应的操作,如读取静态文件或触发动态脚本。最后,Web服务器会将处理结果封装...

    WEB应用程序定时执行任务

    WEB应用程序定时执行任务是开发中常见的一种需求,用于在特定时间自动执行某些功能,比如记录系统日志、发送邮件通知等。在这个DEMO中,我们将探讨如何使用C#语言实现这样的功能,即使在网站关闭的情况下也能正常...

    web应用执行shell操作服务器资源

    通过Web应用执行Shell命令,可以实现如文件管理(创建、移动、删除、重命名)、进程控制(启动、停止、重启)、系统信息查询等任务。 3. **安全性考量**:虽然这样的功能提供了便利,但同时也带来了安全风险。如果...

    STM32实现Web服务器

    1. **TCP/IP协议栈**:在嵌入式设备上实现Web服务器,首要任务是搭建TCP/IP协议栈。LwIP(Lightweight IP)是一个小型、高效的TCP/IP协议栈,适合资源有限的嵌入式系统。LwIP提供了TCP、UDP、ICMP等网络协议,使得...

    最好的web服务器(个人认为)

    3. **安全性**:安全是任何Web服务器的首要任务。服务器软件应具有基本的安全防护措施,如防火墙、SSL/TLS加密等,用户也应定期更新软件以防止已知漏洞被利用。 4. **扩展性**:随着网站的发展,可能需要添加新的...

    五分钟搭建Web服务器和论坛

    4. **启动和测试Web服务器**: 安装完成后,使用`systemctl start apache2`或`systemctl start httpd`命令启动Web服务器。然后,通过访问`http://localhost`或`http://your_server_ip`来测试服务器是否运行正常。 5....

    安卓版本web服务器 almp_v7.0ALMP

    【安卓版本Web服务器 almp_v7.0ALMP】是一个专为Android平台设计的轻量级Web服务器,它允许用户在安卓设备上搭建并运行一个小型的Web服务环境。这款服务器软件具有一定的灵活性和实用性,尤其对于开发者进行移动测试...

    java web使用监听器实现定时周期性执行任务demo

    Java Web 使用监听器实现定时周期性执行任务是一种常见的需求,特别是在服务器端需要定期进行某些维护操作,例如数据备份、清理过期数据或者发送通知。在这个"java web使用监听器实现定时周期性执行任务demo"中,...

    Quartz 定时任务web使用

    - 考虑Web应用的生命周期,Quartz的初始化应在应用启动时进行,停止应在应用关闭时执行,以避免资源泄漏。 - 如果使用Spring框架,可以利用Spring的`SchedulerFactoryBean`来简化配置和管理。 - 注意处理Web容器...

    实现自定义的Web服务器(C#)

    在IT领域,构建自定义的Web服务器是一项挑战性但有益的任务,它可以帮助我们深入理解HTTP协议、网络编程以及服务器架构。本教程将聚焦于使用C#语言实现自定义Web服务器的过程,带你探索Web服务器的工作原理。 首先...

    稳定window系统服务器秒级别自动定时任务软件

    总的来说,这款软件提供了在Windows服务器上实现秒级定时任务的能力,既支持本地的批处理脚本,也能执行远程的Web操作,具有很高的实用性和灵活性。对于系统管理员来说,这样的工具无疑能帮助他们更有效地管理和维护...

    嵌入式Web 服务器中CGI 的特点及实现

    CGI脚本执行完毕后,通过标准输出(STDOUT)将结果以HTML格式返回给Web服务器,再由服务器转发给用户浏览器。 #### 三、嵌入式环境中CGI的特点 在嵌入式Web服务器中实现CGI存在一些特殊性和挑战: 1. **资源限制*...

    Quartz.net作业调度自定义定时执行任务多任务执行c#

    6. **持久化**: 为了保证任务的可靠性和在服务器重启后的恢复,Quartz.NET支持数据库等持久化存储。这样,即使应用程序停止,任务信息也不会丢失。 7. **错误处理和监控**: 你可以设置监听器(`JobListener`和`...

    web服务器的构建(源代码)

    Web服务器的主要任务是监听指定端口(通常为80或443),等待客户端的连接请求。当接收到请求时,它会解析请求头中的URL和方法(如GET、POST等),然后根据这些信息找到对应的资源,如HTML文件、图片或CSS样式表。 ...

    基于thinkphp5框架的定时执行任务

    本篇文章将深入探讨如何在ThinkPHP5框架中实现定时执行任务,即“基于thinkphp5框架的定时执行任务”。 定时任务在Web应用中扮演着重要的角色,例如数据备份、清理缓存、发送邮件、统计分析等自动化任务,都可以...

    delphi 上传文件至web服务器

    在Delphi编程环境中,将文件上传到Web服务器是一项常见的任务,尤其在开发涉及用户交互的桌面应用程序时。本文将深入探讨如何使用Delphi实现文件上传功能,并基于提供的文件列表解析关键知识点。 首先,我们需要...

    Java定时执行任务的三种方法

    它是一个接口,实现了该接口的类可以在Web服务器启动和关闭时自动调用相应的方法。在`contextInitialized`方法中初始化定时任务,而在`contextDestroyed`方法中取消任务。配置示例: ```java public class ...

    java 定时器任务timer 随tomcat启动而启动 同步启动

    我们通常写的timer都是用main方法写的定时器,但同样我们也需要根据服务器启动后定时器也启动的 定时执行任务。不过有个致命伤就是集群方面跟quartz不能比,此方法代码做参考不错,如果要用,那么这个方法在一台...

Global site tag (gtag.js) - Google Analytics