- 浏览: 221536 次
- 性别:
- 来自: 湖南
文章分类
- 全部博客 (94)
- jQuery实例 (2)
- 数据库篇章 (13)
- Java杂谈 (5)
- SSH技术 (33)
- 工作流 (3)
- ajax技术 (2)
- Web前端 (13)
- Struts2 笔记 (1)
- Struts1 笔记 (0)
- 软件面试题目 (0)
- DWR技术篇章 (4)
- 智力题集 (4)
- 正则表达式 (3)
- C语言经典实例 (10)
- C语言学习 (1)
- ibatis and lucene (2)
- jsp_javascript (5)
- 单个功能模块实现源码 (2)
- jsp网站 (1)
- Linux (1)
- 文件解析 (5)
- 各种分页方法 (3)
- android (0)
- XML 技术 (1)
- HTTP通信 & XML (0)
- springMVC (0)
- 平台框架 (1)
最新评论
-
aiwei:
可不可以解释一下每个参数的意思?看不明白啊
Java 动态加载jsp页面 在div 刷新这么简单 就可以实现了 -
hzau_chen:
:i
很强大的jsp手写分页插件 实现json 等一些ajax技术 联合查询 模糊查询 条件查询 -
yzz9i:
你想怎么操作?这个是可以直接使用的
jsp里面实现 注册成功后 系统自动发送电子邮件 -
Zhang987526341:
我想请问在数据库里面还要加字段什么的吗,
jsp里面实现 注册成功后 系统自动发送电子邮件 -
tlk20071:
我现在要写一个类似的东西,但是一点都不熟悉,你能不能帮忙讲解一 ...
一个简单功能强大的Google Map 搜索源码 【我在CSDN上也有发布】
闲话不多说 直接看下面代码
网上这么说的:
1、 Spring中使用TimerTask定制任务
(1)、TimerTask实现了Runnable接口,待执行的任务置于run()中。Timer是一个安排TimerTask的类 此两者一般一起工作。应用时首先创建一个TimerTask的对象,然后用一个Timer的类的schedule方法安排执行它。
(2)、Spring提供了ScheduledTimerTask,就是通常所说的任务,把配置好的任务(ScheduledTimerTask)注册到调度器TimerFactoryBean中就可以了。实际上ScheduledTimerTask是对JDK中的TimerTask进行了封装,TimerFactoryBean是对JDK中的Timer进行了封装。
(3)开发使用中Spring配置文件的说明
1、编写NewTimeTask.java,此类需extends TimerTask类,在run方法中编写要执行的操作
2、Spring配置文件
<beans>
<!-- 自己编写的任务类 -->
<bean id="newTask" class="com.huawei.esop.task.NewTimeTask"></bean>
<bean id="newsScheduledTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
<!-- 系统启动后60秒开始执行 单位毫秒-->
<property name="delay" value="60000"></property>
<!-- 每60秒执行一次 -->
<property name="period" value="60000"></property>
<!-- 执行的任务 -->
<property name="timerTask" ref="newTask"></property>
</bean>
<!-- 注册调度器 -->
<bean id="timerFactory"
class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="scheduledTimerTasks">
<list>
<ref bean="newsScheduledTask" />
</list>
</property>
</bean>
</beans>
上面这段说发 这就类似我下面的这个创建方式
一 创建timerManager 管理类。
二 创建本地要执行的任务类方法
三 在web.xml中配置监听器
第一种方式到这里算结束了 。下面看第二种
网上的第二中说发。
1、 既然我们使用了Spring,所以不一定要extends TimerTask类来定义一个Task,Spring也可以使用MethodInvokingTimerTaskFactoryBean类直接指定执行某个对象的方法.
2、 MyTask.java 此类无需extends TimerTask类
public class MyTask
{
public void execute()
{
System.out.println("开始我的任务");
//编写逻辑代码
}
}
applicationcontext.xml
<bean id="myTask" class="com.huawei.esop.MyTask" />
<!-- 定义任务对象和方法 -->
<bean id="timerTaksBean"
class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean">
<property name="targetObject" ref="myTask"></property>
<property name="targetMethod" value="execute"></property>
</bean>
<!-- 任务的执行 -->
<bean id="scheduledTimerTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
<property name="timerTask" ref="timerTaksBean"></property>
<property name="period" value="1000"></property>
<property name="delay" value="1000"></property>
</bean>
<!-- 注册任务 -->
<bean id="timerFactoryBean"
class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="scheduledTimerTasks">
<list>
<ref bean="scheduledTimerTask" />
</list>
</property>
</bean>
我下面同样给出例子。
applicationContext.xml beans中添加如下代码 class 做相应配置
二 要执行的定时方法类 不要继承(extends) TimerTask 类 这也是跟第一种方式不同之处
三 把你在web.xml中的定时服务类的监听器配置注释或删掉
个人觉得第二种更方便更好看看看看些
引用
网上这么说的:
1、 Spring中使用TimerTask定制任务
(1)、TimerTask实现了Runnable接口,待执行的任务置于run()中。Timer是一个安排TimerTask的类 此两者一般一起工作。应用时首先创建一个TimerTask的对象,然后用一个Timer的类的schedule方法安排执行它。
(2)、Spring提供了ScheduledTimerTask,就是通常所说的任务,把配置好的任务(ScheduledTimerTask)注册到调度器TimerFactoryBean中就可以了。实际上ScheduledTimerTask是对JDK中的TimerTask进行了封装,TimerFactoryBean是对JDK中的Timer进行了封装。
(3)开发使用中Spring配置文件的说明
1、编写NewTimeTask.java,此类需extends TimerTask类,在run方法中编写要执行的操作
2、Spring配置文件
<beans>
<!-- 自己编写的任务类 -->
<bean id="newTask" class="com.huawei.esop.task.NewTimeTask"></bean>
<bean id="newsScheduledTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
<!-- 系统启动后60秒开始执行 单位毫秒-->
<property name="delay" value="60000"></property>
<!-- 每60秒执行一次 -->
<property name="period" value="60000"></property>
<!-- 执行的任务 -->
<property name="timerTask" ref="newTask"></property>
</bean>
<!-- 注册调度器 -->
<bean id="timerFactory"
class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="scheduledTimerTasks">
<list>
<ref bean="newsScheduledTask" />
</list>
</property>
</bean>
</beans>
上面这段说发 这就类似我下面的这个创建方式
一 创建timerManager 管理类。
import java.util.Timer; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import org.apache.commons.lang.time.DateUtils; public class timerManager implements ServletContextListener { //每天的毫秒数 public static final long PERIOD_DAY = DateUtils.MILLIS_IN_DAY; //一周的毫秒数 public static final long PERIOD_WEEK = PERIOD_DAY * 7; //无延迟 public static final long NO_DELAY = 0; //定时器 private Timer timer; /** * 在Web应用结束时停止任务 */ public void contextDestroyed(ServletContextEvent sce) { timer.cancel();//定时器销毁 } /** * 在Web应用启动时初始化任务 */ public void contextInitialized(ServletContextEvent sce) { //定义定时器 timer = new Timer(true); //timer.schedule(new LocationTask(), NO_DELAY, PERIOD_WEEK * 4); // timer.schedule(new figureTermCount(), NO_DELAY, 30000); } }
二 创建本地要执行的任务类方法
import java.util.TimerTask; public class LocationTask extends TimerTask { private static boolean isRunning = false; @Override public void run() { if(!isRunning) { isRunning = true; //------要执行的程序块-------- isRunning = false; } else { //------要执行的程序块-------- } } }
三 在web.xml中配置监听器
<listener> <listener-class>com.sxy.sms.util.timerManager</listener-class> </listener>
第一种方式到这里算结束了 。下面看第二种
引用
网上的第二中说发。
1、 既然我们使用了Spring,所以不一定要extends TimerTask类来定义一个Task,Spring也可以使用MethodInvokingTimerTaskFactoryBean类直接指定执行某个对象的方法.
2、 MyTask.java 此类无需extends TimerTask类
public class MyTask
{
public void execute()
{
System.out.println("开始我的任务");
//编写逻辑代码
}
}
applicationcontext.xml
<bean id="myTask" class="com.huawei.esop.MyTask" />
<!-- 定义任务对象和方法 -->
<bean id="timerTaksBean"
class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean">
<property name="targetObject" ref="myTask"></property>
<property name="targetMethod" value="execute"></property>
</bean>
<!-- 任务的执行 -->
<bean id="scheduledTimerTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
<property name="timerTask" ref="timerTaksBean"></property>
<property name="period" value="1000"></property>
<property name="delay" value="1000"></property>
</bean>
<!-- 注册任务 -->
<bean id="timerFactoryBean"
class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="scheduledTimerTasks">
<list>
<ref bean="scheduledTimerTask" />
</list>
</property>
</bean>
我下面同样给出例子。
applicationContext.xml beans中添加如下代码 class 做相应配置
<bean id="myTask" class="com.sxy.sms.task.figureTermCount" /> <!-- 定义任务对象和方法 --> <bean id="timerTaksBean" class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean"> <property name="targetObject" ref="myTask"></property> <property name="targetMethod" value="execute"></property> </bean> <!-- 任务的执行 --> <bean id="scheduledTimerTask" class="org.springframework.scheduling.timer.ScheduledTimerTask"> <property name="timerTask" ref="timerTaksBean"></property> <property name="period" value="1000"></property> <property name="delay" value="1000"></property> </bean> <!-- 注册任务 --> <bean id="timerFactoryBean" class="org.springframework.scheduling.timer.TimerFactoryBean"> <property name="scheduledTimerTasks"> <list> <ref bean="scheduledTimerTask" /> </list> </property> </bean>
二 要执行的定时方法类 不要继承(extends) TimerTask 类 这也是跟第一种方式不同之处
public class figureTermCount { public void execute() { System.out.println("开始我的任务"); //编写逻辑代码 } }
三 把你在web.xml中的定时服务类的监听器配置注释或删掉
个人觉得第二种更方便更好看看看看些
发表评论
-
Java在项目中怎么让系统运行的更快,其实有好多方法 下面主要写到怎么运用系统级缓存
2012-02-08 17:11 0下面代码就已开发的系统为例子,也给自己学习学习。 ... -
(JAVA)未登录获取系统数据,例如一些公告之类的展示数据
2012-01-14 15:30 945在jsp页面上可以 通过Java代码得到 。 <% ... -
Java 中怎么发送 Email 邮件
2012-01-11 14:47 2600下面是我写的一段发生 ... -
Java 方便调用的工具类
2012-01-09 19:01 1768//时间格式化 (string型转date型 date转s ... -
Java 里面怎么发送XML数据请求 和怎么处理返回的XML数据
2012-01-04 15:33 0设计了几个关键地方:1 怎么发送请(发送有那些参数,参数怎么处 ... -
创建系统参数 (实例化参数)
2011-12-15 15:45 1260参数文件 引用qnr.properties 之中属性:ex ... -
Exception in thread "main":com/sun/mail/util/LineInputStream
2011-12-07 16:00 1033经过摸索,问题终于解决了。大家 MyEclipse6.5的j ... -
IO 流读取文件时候出现乱码 文件编码格式问题 怎么转换解决方法
2011-11-08 12:18 4511在使用下面这个写法时候UTF-8文件编码 在读取时候出现乱码问 ... -
很强大的jsp手写分页插件 实现json 等一些ajax技术 联合查询 模糊查询 条件查询
2011-10-13 10:02 11169这个插件里面分页功能很强大,调用者只需赋几个值就可以了。 下 ... -
Java 动态加载jsp页面 在div 刷新这么简单 就可以实现了
2011-09-29 17:43 11960引用 <script type="text/j ... -
注释方式 类生成数据库表
2011-09-21 17:24 970类对象: package com.pojos; im ... -
c:foreach 中jsp页面 中怎么对时间类型进行格式化问题
2011-09-14 12:00 7642具体实现很简单 就两步走: 引用 <%@ taglib ... -
给配置了c3p0的application.xml 配置一个单独的连接文件 applicationContext.xml 数据库连接就不要老是该来改去了
2011-09-09 17:52 2066原本的applicationContext.xml 部分配置( ... -
dao 分页方法
2011-09-01 16:05 1338看看这个类很简单实用: public Map feny ... -
ssh 整合 中怎么使用 c3p0 链接池 经测试已成功 不受 hibernate的8小时限制
2011-08-30 09:44 1418实现方式很简单,只操作 applicationContex ... -
怎么控制 显示 DIV 里面的 字数 只显示部分文字
2011-08-29 09:19 4273在 DIV 里面加如下 样式就可以了。 <div st ... -
FCKeditor 在jsp [ssh 框架中]中怎么调用 实现 图片上传/文件浏览【自己看文档摸索出来的】跟大家一块分享
2011-08-25 14:58 23191:下载 解压FCKeditor_2.6.4.1.zip ... -
使用 过滤器 filter处理session超时问题
2011-08-24 16:11 1541新建一个过滤器命名为:FilterDemo,该类继承自:jav ... -
最好用 最简单的日期时间javascript代码
2011-08-19 16:49 950<script>setInterval(&quo ... -
InputStreamReader 与 BufferedReader 文件读取时候区别
2011-08-12 14:58 910关于怎么知道上传文件是什么类型的编码上面文章有做代码块。 我 ...
相关推荐
在SSH整合中,Spring主要作为应用的核心,负责管理其他组件,如Struts和Hibernate,通过Bean工厂和ApplicationContext实现对象的创建和管理。 2. **Struts框架**:Struts是基于MVC(Model-View-Controller)设计...
Java SSH 框架是Java开发企业级应用的三大核心框架,它们分别是Spring、Struts 和 Hibernate。这个框架组合提供了一种高效且灵活的方式来构建Web应用程序,尤其在处理增删改查(CRUD)操作、分页、上传下载等功能时...
- 各个接口的Java源代码,展示了如何在SSH框架下实现业务逻辑。 - 配置文件,包括Spring的bean配置、Struts的action配置以及Hibernate的数据源配置。 - 数据库模型类,对应数据库表结构的实体类。 - 测试用例,可能...
JavaSSH框架,通常指的是在Java开发中用于构建服务器端应用的一种技术栈,它结合了Struts、Spring和Hibernate这三个主流的开源框架。Struts提供了MVC(Model-View-Controller)设计模式,Spring则是一个全面的后端...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。这个项目是一个基于SSH框架实现的简单加法计算器,对于初学者来说,它是理解SSH框架工作原理和结构的一个良好起点。 ...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常用的一套集成框架。这个框架集合了MVC(Model-View-Controller)设计模式的Struts2,依赖注入和面向切面编程的Spring,以及持久层管理的...
Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh框架小例子Java中的ssh...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。这个压缩包文件"SSHdemo"提供了一个SSH框架搭建登录功能的示例,帮助开发者了解并实践如何整合这三个框架来构建一个...
Java基于jsp的校园通讯录的实现ssh框架.zipJava基于jsp的校园通讯录的实现ssh框架.zipJava基于jsp的校园通讯录的实现ssh框架.zipJava基于jsp的校园通讯录的实现ssh框架.zipJava基于jsp的校园通讯录的实现ssh框架.zip...
SSH是Java开发中常用的三大框架,分别是Struts、Spring和Hibernate。这个例子旨在为初学者提供一个基于SSH的简单应用示例,帮助他们理解和掌握这三个框架的集成与使用。 Struts是MVC(Model-View-Controller)设计...
SSH框架是Java Web开发中的一个经典组合,由Spring、Struts和Hibernate三个开源框架集成,常用于构建企业级应用。这个“商贸项目SSH框架实现代码”提供了完整的源码,对于学习和理解SSH框架的工作原理及实际应用具有...
在Java中,常见的SSH库有JSch和Apache MINA等。 SSH协议分为两个主要部分:SSH连接协议和SSH传输协议。SSH连接协议用于建立安全通道,而SSH传输协议则在此通道上提供加密的数据传输服务。JavaSSH框架通过这些协议,...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常用的一套集成框架。这个框架集合了Struts2的MVC设计模式、Spring的依赖注入(DI)和面向切面编程(AOP)以及Hibernate的对象关系映射(ORM),...
本项目的Blog:使用纯Java实现一个WebSSH项目 注意: 由于前端代码中没有指定终端的信息 所以需要各位自己输入这些信息,位置在webssh.html中 openTerminal( { /*operate:'connect', host: '',//IP port: '',...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。这个项目源码提供了SSH整合的实践案例,特别适合初学者学习和理解Web应用的开发流程。 Struts2作为MVC(Model-View-...
SSH框架,全称为Spring、Struts和Hibernate的首字母缩写,是Java开发中的一个经典组合,用于构建企业级Web应用程序。Spring提供了依赖注入(DI)和面向切面编程(AOP),Struts则处理MVC(模型-视图-控制器)架构,...
这个“java框架ssh框架项目案例”提供了一个完整的示例,帮助开发者了解如何在实际项目中集成和应用这些框架。 1. **Struts2**:作为MVC(模型-视图-控制器)设计模式的实现,Struts2负责处理HTTP请求并分发到相应...
Java基于jsp的网络聊天室的实现ssh框架.zipJava基于jsp的网络聊天室的实现ssh框架.zipJava基于jsp的网络聊天室的实现ssh框架.zipJava基于jsp的网络聊天室的实现ssh框架.zipJava基于jsp的网络聊天室的实现ssh框架.zip...
【SSH框架整合实例】是Java开发中的一个重要主题,它涵盖了Spring、Struts和Hibernate三个主流的开源框架。这个实例是一个小型企业网站的实现,虽然功能有限,但足够用于初学者学习和理解这些框架的集成与应用。 ...
SSH框架是Java Web开发中常见的“三位一体”框架,它们分别是Struts负责视图层,Spring处理业务逻辑和服务层,而Hibernate则专注于持久化层,三者协同工作,提供了一个高效、灵活的开发环境。 Struts作为MVC(模型-...