- 浏览: 952657 次
- 性别:
- 来自: 大连
文章分类
- 全部博客 (242)
- Flex (38)
- Java (15)
- iBatis (4)
- Spring (15)
- Oracle (4)
- Cognos (4)
- ActionScript (17)
- AIR (14)
- Box2D (1)
- Windows8 (3)
- AIR Mobile (4)
- Quartz (6)
- mybatis (7)
- CGLIB (1)
- Mobile (9)
- BlazeDS (3)
- IOS (8)
- FlashBuilder (1)
- Scout (1)
- Starling (5)
- APNS (3)
- Chrome (3)
- Windows (2)
- MySQL (15)
- Feathers (1)
- Tomcat (5)
- JavaPNS (1)
- SVN (2)
- XAMPP (1)
- Drupal (1)
- Linux (2)
- VSFTPD (1)
- jQuery (5)
- Discuz (2)
- Word (1)
- PHP (1)
- OFFICE (2)
- javascript (15)
- 微信 (1)
- 博客 (1)
- jquery mobile (5)
- nginx (1)
- memcached (1)
- maven (3)
- log4j (2)
- GitHub (2)
- html5 (3)
- WebSocket (2)
- Mac (11)
- Apache (1)
- JUnit (1)
- Eclipse (1)
- Openfire (1)
- HLS (1)
- Swift (6)
- Excel (2)
- IDE (4)
- NodeJS (8)
- 树莓 (3)
- CSS (2)
- PhoneGap (1)
- Angular.js (5)
- bootstrap (1)
- angular (5)
- React (1)
- Browserify (1)
- Ruby (1)
- WebService (1)
- CXF (1)
- redis (2)
- Dubbo (1)
- Jedis (1)
- solr (1)
- yeoman (1)
- grunt (1)
- bower (1)
- gulp (3)
- Git (2)
- angularJS (4)
- fastjson (1)
- Spring-Boot (1)
- Vue (1)
- Motan (1)
- Python (1)
最新评论
-
July01:
最近了解到一款StratoIO打印控件,功能如下:1、Html ...
NodeJS使用ipp协议打印 -
小“味”子:
不错不错,试了,是可以的
Mac下连接SQL Server客户端 -
akka_li:
我遇到这个问题了!我的原因是配置文件里写得各个包的xsd文件的 ...
Referenced file contains errors (http://www.springframework.org/schema...错误 -
迪伦少校:
我只想知道,你最后配置成功了吗?我这里怎么tomcat总是死呢 ...
关于 Nginx+Tomcat+Memcached做负载均衡加共享session -
LiYunpeng:
jun23100 写道我也遇到这个问题了,环境都是正确的,怎么 ...
关于HTML5请求WebSocket,404的问题
关于Tomcat启动后台服务时候,在不影响启动时间的情况下,启动完成执行一个操作
主要思路是对后台进行一些初始化操作
但是,有可能初始化操作的时间长度是不可控的,甚至可能是在循环的操作
所以试过了如下方法是不太合适的
如:
1.配置一个Servlet默认自动启动
2.配置一个Listener来启动
3.实现Spring的InitializingBean接口
但是,这三种方法,都是伴随着Tomcat来启动的,也就是占用Tomcat的启动时间
以上是伴随启动的方法
以下是不影响Tomcat启动的并行方法
其实考虑到伴随启动,就想到了Flex开发通常用到的异步调用
无非就是新创建了一个线程来单独执行,这样Tomcat执行到相应的操作就可以直接继续下去了,不会处于等待的状态,避免了启动超时
具体思路如下
1.创建新的线程去执行(本方法没有实际实验,本文记录的是第二种方法,使用Quartz)
2.使用Quartz来配置一个任务执行
具体配置如下
实现Job接口的任务实现类
Spring配置文件中配置的任务
以上的配置不详细说明了,不明白意思的属性可以去API文档中查询
http://www.quartz-scheduler.org/api/1.8.5/
这里需要注意的一点就是Job的实现,是必须重写execute方法的,可是我反复实验,在targetMethod的value中写execute,就会报错,找不到execute方法,后来想了想,可能是参数的问题
copy了原来的方法,于是去掉了参数,就好用了
----------------------------
另外,再记录一个关于Quartz两种配置JobDetail的方法,直接在代码中创建JobDetail,会无法注入相应的接口实现,在稍后的博客中介绍
主要思路是对后台进行一些初始化操作
但是,有可能初始化操作的时间长度是不可控的,甚至可能是在循环的操作
所以试过了如下方法是不太合适的
如:
1.配置一个Servlet默认自动启动
2.配置一个Listener来启动
3.实现Spring的InitializingBean接口
但是,这三种方法,都是伴随着Tomcat来启动的,也就是占用Tomcat的启动时间
以上是伴随启动的方法
以下是不影响Tomcat启动的并行方法
其实考虑到伴随启动,就想到了Flex开发通常用到的异步调用
无非就是新创建了一个线程来单独执行,这样Tomcat执行到相应的操作就可以直接继续下去了,不会处于等待的状态,避免了启动超时
具体思路如下
1.创建新的线程去执行(本方法没有实际实验,本文记录的是第二种方法,使用Quartz)
2.使用Quartz来配置一个任务执行
具体配置如下
实现Job接口的任务实现类
public class InitJob implements Job { @Override public void execute(JobExecutionContext arg0) throws JobExecutionException { // TODO Auto-generated method stub } public void executeA() throws JobExecutionException { // TODO Auto-generated method stub ......... }
Spring配置文件中配置的任务
<bean id="initJob" class="com.xxx.services.InitJob" /> <!--定时器任务配置(开始)--> <!--配置JOB--> <bean id="initJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject" ref="initJob" /> <property name="targetMethod" value="executeA" /> <!-- <property name="arguments" /> --> </bean> <!--配置Trigger--> <bean id="initTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean"> <property name="jobDetail" ref="initJobDetail" /> <property name="startDelay" value="1000" /> <property name="repeatInterval" value="0" /> <property name="repeatCount" value="0" /> </bean> <!--配置Scheduler--> <bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean" autowire="no"> <property name="triggers"> <list> <ref bean="initTrigger" /> </list> </property> <property name="autoStartup" value="true"/> </bean> <!--定时器任务配置(结束)-->
以上的配置不详细说明了,不明白意思的属性可以去API文档中查询
http://www.quartz-scheduler.org/api/1.8.5/
这里需要注意的一点就是Job的实现,是必须重写execute方法的,可是我反复实验,在targetMethod的value中写execute,就会报错,找不到execute方法,后来想了想,可能是参数的问题
copy了原来的方法,于是去掉了参数,就好用了
----------------------------
另外,再记录一个关于Quartz两种配置JobDetail的方法,直接在代码中创建JobDetail,会无法注入相应的接口实现,在稍后的博客中介绍
发表评论
-
maven执行生成javadoc报错 MavenReportException: Error while creating archive:
2018-10-12 09:35 4283[INFO] MavenReportException: Er ... -
Linux 下载Oracle JDK,前缀
2018-09-10 09:22 716wget --no-check-certificate --n ... -
关于FileDescriptor的解释
2018-06-19 19:16 1200最近在阅读Tomcat的源码,其中Nio的底层实现用到了Fil ... -
关于AsynchronousSocketChannel的正确关闭方法,以及关闭出错异常AsynchronousCloseException的处理
2017-05-18 09:28 5089如下异常一致困扰了我很久,Google和度娘了很久都没有解决, ... -
linux下下载sun 的JDK
2016-07-24 15:07 866因为sun有下载链接的验证,所以无法直接通过url下载 那么 ... -
SpringMVC中,捕捉Controller返回值进行拦截处理
2015-07-08 14:26 8803SpringMVC中,首先是Interce ... -
Spring 整合CXF提示未找到定义 cxf-extension-soap.xml的问题解决
2015-04-27 17:22 5676因为在网上找了些Demo来通过CXF配置WebService, ... -
springMVC多个xml配置文件时,导致事务不起作用的问题
2014-12-31 21:47 875在自己写的应用中,整个框架都可以正常运行,但是,事务管理却不好 ... -
iText操作PDF,中文支持的问题
2014-07-30 20:37 3503最近各种研究PDF的编辑,之前看例子有使用PDFBox的,但是 ... -
Illegal access: this web application instance has been stopped already.
2014-03-12 08:45 6324Illegal access: this web applic ... -
SpringMVC中,异常处理返回JSON格式
2014-03-06 14:26 1737写一个类,实现HandlerExceptionResolver ... -
Apache与Tomcat整合实现动静分离与负载均衡的配置实践
2014-01-24 14:25 9538转自 http://heylinux.com/archives ... -
Java重定向sendRedirect与请求转发的区别
2014-01-08 15:57 2762此内容纯属COPY 请求重定向与请求转发的比较,HttpS ... -
在Windows上使用AudioInputStream导致文件被占用无法delete的解决办法
2013-12-17 14:13 1911最近在研究通过HTML5录制音频直接上传到后台保存文件 使用 ... -
Referenced file contains errors (http://www.springframework.org/schema...错误
2013-12-17 10:32 18790Referenced file contains errors ... -
Caused by: org.apache.catalina.LifecycleException: A child container failed
2013-11-20 12:02 2251Caused by: org.apache.catalina. ... -
JS & JAVA通过流的方式传递文件或字符
2013-11-13 08:09 9077首先是前端 JS代码 类似如下 function cal ... -
关于 Nginx+Tomcat+Memcached做负载均衡加共享session
2013-10-22 08:13 5831首先,确保在机器上已经安装了 nginx、tomcat、mem ... -
Quartz出现FactoryBean which is currently in creation returned null from getObject
2013-03-12 20:15 4014这个错误提示有些不解 但在我配置Spring+Quartz的 ... -
Quartz+Spring动态时间执行Job类实现的注入
2013-02-28 14:33 2515关于Spring + Quartz的实现,网上已经有很多了,这 ...
相关推荐
tomcat启动时执行java自定义方法,一般用于启动时赋值情况。
### 关于 Quartz 随 Tomcat 启动执行一次的知识点 #### 1. Quartz 概述 Quartz 是一个开源的作业调度框架,能够触发在指定时间执行的任务(也称为作业)。它提供了丰富的调度器功能,如支持复杂的循环调度、支持...
要实现在Tomcat启动时自动执行的Servlet,我们需要在Servlet的`init()`方法中添加代码来创建一个后台线程。`init()`方法是Servlet生命周期中的初始化阶段,当Servlet被加载时,Tomcat会调用这个方法。我们可以在`...
在本文中,我们将设置 Tomcat 的自动启动时间为“每次开机后”,以便在系统启动时自动启动 Tomcat 服务。 知识点 4: 设置 Tomcat 的启动文件 在设置 Tomcat 的自动启动时,需要指定 Tomcat 的启动文件 bat。用户...
标题中的“tomcat启动时定时循环执行内容(action)”指的是在Tomcat服务器启动过程中,通过配置或者自定义代码实现一个定时任务,使得该任务在Tomcat启动后能够周期性地自动执行。这种机制常用于需要定期检查、更新...
完成上述配置后,可以通过以下步骤验证Tomcat是否能够成功在系统启动时自动启动: 1. **重启系统**: ```bash sudo reboot ``` 2. **检查Tomcat状态**: - 如果使用的是`rc.local`方法,则可以直接检查Tomcat...
**问题描述**:系统环境变量配置不当导致Tomcat启动失败。 **解决方法**:检查并确认`JAVA_HOME`和`CATALINA_HOME`等环境变量是否正确配置。确保指向正确的JDK和Tomcat安装路径。 ##### 4. 多个Tomcat版本共存 **...
"Tomcat开机自启动" ...Tomcat 开机自启动可以通过创建自启动脚本、赋予权限、启动服务和设置开机自启动来实现。在本文中,我们介绍了 Tomcat 开机自启动的步骤和相关知识点,为读者提供了一个详细的指南。
"Tomcat启动管理工具"指的是用于控制和监控Tomcat服务器的一系列方法和工具。 【描述】:Tomcat启动管理工具涵盖了启动、停止、监控以及配置Tomcat服务器的过程。这些工具可以帮助开发者有效地管理他们的应用服务,...
tomcat启动|退出执行事件类: import java.io.File; import java.io.FileWriter; import java.io.IOException; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import ...
标题中的“命令行启动关闭tomcat而不显示cmd界面”指的是在Windows操作系统中,通过命令行启动和关闭Apache Tomcat服务器,但不希望看到通常伴随命令行执行而出现的CMD窗口。这种方式可以使得桌面更加整洁,同时也...
我们通常写的timer都是用main方法写的定时器,但同样我们...不过有个致命伤就是集群方面跟quartz不能比,此方法代码做参考不错,如果要用,那么这个方法在一台服务器上执行就行了,其他服务器注释掉web中的监听就行了。
这里`Tomcat6`是服务名,`binPath`是Tomcat启动脚本的路径。 3. 设置服务启动类型,使其开机自动启动: ``` sc config Tomcat6 start= auto ``` 4. 启动服务: ``` net start Tomcat6 ``` **Linux/Unix系统...
标题“Tomcat启动服务运行Servlet”涉及到的是Java Web开发中的核心概念,主要涵盖Tomcat服务器的启动过程以及Servlet的执行机制。Tomcat是一款开源、免费的Web应用服务器,广泛用于部署Java Servlet和JavaServer ...
然而,默认情况下,Tomcat并不会随着系统启动而自动运行,这对于服务器管理和运维来说是一个不便。因此,实现Tomcat的自启动成为许多开发者和运维人员追求的目标。本文将详细阐述如何让解压缩版的Tomcat在系统启动时...
【标题】:Tomcat启动顺序 【描述】:Tomcat作为Apache软件基金会的开源Java Servlet容器,其启动过程是理解其工作原理的关键部分。Tomcat的启动顺序涉及到多个层次的加载,从Bootstrap类开始,逐步加载系统配置、...
Windows系统下 启动tomcat服务bat 可执行脚本,当开发人员想要通过在java中开发一个启动Windows系统下tomcat的脚本文件时,就可以使用我这个
标题 "Tomcat停止与启动shell" 指的是一个用于管理Tomcat服务器的脚本,通常这个`restart.sh`文件是用来自动化Tomcat服务的启动和停止操作的。Tomcat是Apache软件基金会的一个开源项目,是一个广泛使用的Java ...
然而,这种方法的缺点在于它不能指定启动Tomcat服务的用户,可能导致Tomcat以root用户运行,这是一个严重的安全风险,因为如果Tomcat被攻击,攻击者将拥有root权限。 为了克服上述问题,我们需要采用更复杂但专业的...
完成环境变量的配置后,接下来是创建Windows服务,使Tomcat能够作为一项系统服务运行,从而实现开机自启动。操作方法如下: 1. 打开命令提示符(cmd),切换到Tomcat的bin目录下,通常路径为`%CATALINA_HOME%\bin`...