`
kang
  • 浏览: 474600 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用IM中的batch群发邮件

    博客分类:
  • NBS
阅读更多

 

调查任务:尝试利用 group 管理页面的 batch 机能,调查一下是否可以用来实现发送邮件。

 

调查思路:

 

IM group 管理的 batch 机能中,参照既存 batch 的例子(参考 Java 模式而非 JS 模式,将既存的 class 文件反编译,看既存 batch 代码的大概思路),自己先建个最简单的 batch 例子(打印一句话),设置一下时间,让它 1 分钟后就运行,测试通过, OK

 

-》就是打印--------batchTest----------的那句话(20090518追加)。

 

[INFO] j.c.i.s.b.BatchScheduleServiceProviderThread - Batch-Config accept: <default>test (2009/01/14|09:41:00 -> Wed Jan 14 09:41:00 GMT+08:00 2009)

[INFO] j.c.i.s.b.BatchScheduleServiceProviderThread - Batch-Scheduler re-started the surveillance of time.

[INFO] j.c.i.s.b.BatchScheduleServiceProviderThread - Batch-Program execution: <default>test

[INFO] j.c.i.s.s.HTTPActionEventListenerServlet - HTTPActionEvent is received: name=jp.co.intra_mart.foundation.service.provider.application.core.TemporaryFilterHTTPActionEvent

[INFO] j.c.i.s.s.HTTPActionEventListenerServlet - HTTPActionEvent-request received: name=jp.co.intra_mart.foundation.service.provider.application.core.TemporaryFilterHTTPActionEvent

[INFO] j.c.i.s.b.i.BatchEventListenerHTTPActionEvent - Batch request received from ×××× /172. ×× . ×× . ×× : (default)test

------------------batchTest-------------------------

[INFO] j.c.i.s.b.TimerThread - Batch-Program success: <default>test(JAVA://test.BatchTest): 149[millisec] 
 

 

再使用 batch 发送一封写死的邮件, OK

 

-》运行SendMailTest程序。(20090518追加)

 

[INFO] j.c.i.s.b.BatchScheduleServiceProviderThread - Batch-Config accept: <default>SendMaiiTest (2009/01/14|09:58:00 -> Wed Jan 14 09:58:00 GMT+08:00 2009)

[INFO] j.c.i.s.b.BatchScheduleServiceProviderThread - Batch-Scheduler re-started the surveillance of time.

[INFO] j.c.i.s.b.BatchScheduleServiceProviderThread - Batch-Program execution: <default>SendMaiiTest

[INFO] j.c.i.s.s.HTTPActionEventListenerServlet - HTTPActionEvent is received: name=jp.co.intra_mart.foundation.service.provider.application.core.TemporaryFilterHTTPActionEvent

[INFO] j.c.i.s.s.HTTPActionEventListenerServlet - HTTPActionEvent-request received: name=jp.co.intra_mart.foundation.service.provider.application.core.TemporaryFilterHTTPActionEvent

[INFO] j.c.i.s.b.i.BatchEventListenerHTTPActionEvent - Batch request received from ×××× /172. ×× . ×× . ×× : (default)SendMaiiTest

[INFO] j.c.i.s.b.TimerThread - Batch-Program success: <default>SendMaiiTest(JAVA://test.SendMaiiTest): 170[millisec]

  
 

 

下面就剩下一个问题了:怎样向从数据库中读取出来的所有用户发送邮件。问题的焦点就是如何从数据库中取得所有用户。

 

因为既存例子程序的执行流程是从 service -》eventListeren -》BL -》dao ,且此过程中都有(和 IM 容器相关的参数在传递),直接只用 dao 来取用户是不行的,往源头找,只有 service 层的 service () 方法没有参数(原先例子中是页面操作时转给这个方法的)。

 

我尝试在我的 batch 文件中直接调用这个方法,不行,报错, request 中的 session 参数错误,看来,还是跟“环境参数”有关系的。

 

调查受阻,在多次尝试无果后,适时请教一下高手,他先尝试了创建 event 这个思路,行不通。接着,他参照了 jp.co.intra_mart.foundation.bpw.model.data. BPWSetReferWorkTable 文件的 insertWorkTable 方法中,有这样一段代码:

 

      DataAccessController controller = DataManager.getDataManager().getDataAccessController();

       ReferMasterDAOIF daoIF = (ReferMasterDAOIF)controller.getDAO("bpw", "daorefermaster", groupID); 

 

-》第一句:从Data管理器中获取数据访问控制器;第二句:数据访问控制器,根据传入的参数,获取对应的DAO接口。(20090518追加)

 

 

他认为这段应该就是取 dao 的(和我们前面例子程序中用的方法从原理上讲是一致的),我赶紧尝试,依葫芦画瓢,将参数换成我们例子程序中的 employee OK ,果然可以,可以取得 dao

 

下面的问题就好解决了,我将用户取出来,调用发邮件的方法,循环一下,就向各个用户发送了邮件。

 

OK ,使用 batch 给多个客户发送邮件,搞定。

 

 

分享到:
评论

相关推荐

    自己的邮件群发

    3. 使用说明.txt:这份文档应该提供了如何运行和配置这个邮件群发工具的步骤和注意事项。 4. 内容.txt:这可能存储了邮件的主体内容,包括文字、链接或其他格式化信息。 5. 账号.txt:可能包含了多个发件人账号,...

    罗克韦尔Batch系统使用手册 中文版本

    罗克韦尔Batch系统使用手册 中文版本,便于你对自己的Batch批次管理系统进行学习、编程组态、使用

    SAP-17LSMW使用Standard Batch导入BOM.docx

    以下是在 SAP-17LSMW 中使用 Standard Batch 导入 BOM(物料清单)的详细步骤和相关知识点。 一、背景 SAP-17LSMW 是 SAP 系统中的一种数据导入工具,通过使用 Standard Batch,可以将批量数据导入到 SAP 系统中。...

    SpringBatch+Spring+Mybatis+MySql (spring batch 使用jar)

    Spring Batch是一个轻量级的,完全面向Spring的批处理框架,可以应用于企业级大量的数据处理系统。Spring Batch以POJO和大家熟知的Spring框架为基础,使开发者更容易的访问和利用企业级服务。Spring Batch可以提供...

    tensorflow中next_batch的具体使用

    本文介绍了tensorflow中next_batch的具体使用,分享给大家,具体如下: 此处给出了几种不同的next_batch方法,该文章只是做出代码片段的解释,以备以后查看: def next_batch(self, batch_size, fake_data=False)...

    使用spring batch需要在数据库建立的几个表——建表语句

    使用spring batch需要在数据库建立的几个表——建表语句(BATCH_JOB_INSTANCE、BATCH_JOB_EXECUTION、BATCH_JOB_EXECUTION_CONTEXT、`BATCH_JOB_EXECUTION_PARAMS` 、`BATCH_JOB_EXECUTION_SEQ` 、`BATCH_JOB_SEQ` ...

    spring-batch包

    6. **对 Spring Boot 的更好支持**:随着 Spring Boot 的广泛使用,Spring Batch 4.0.0 版本与 Spring Boot 集成得更加紧密,简化了配置过程,并提供了更多开箱即用的功能。 7. **性能提升**:在 4.0.0 版本中,...

    Spring Boot整合Spring Batch,实现批处理

    在Java开发领域,Spring Boot和Spring Batch的整合是构建高效...通过学习和实践这个示例,你不仅可以掌握如何在Spring Boot中使用Spring Batch,还能了解批处理的最佳实践,这对于处理大数据量的应用场景非常有价值。

    如何在PCS 7中组态Batch.zip

    如何在PCS 7中组态Batchzip,Simatic BATCH是PCS 7中实现批生产控制的重要组件...本文主要面向初次使用BATCH软件的自动化工程人员,介绍了PCS 7中组态Batch的基本步骤。本文中所有内容及截图信息均基于PCS 7 V8.1版本。

    Spring Batch批处理框架

    Spring Batch社区提供了许多示例和最佳实践,这些资源可以帮助开发者快速上手和理解如何在实际项目中应用Spring Batch。通过查看这些示例,开发者可以学习到如何组织代码、设计批处理流程以及如何处理各种异常情况。...

    Spring Batch in Action英文pdf版

    Spring Batch是一个开源的轻量级、全面的批处理框架,它是为了解决企业应用中的大规模数据处理需求而设计的。Spring Batch in Action是一本专注于Spring Batch框架的书籍,由Arnaud Cogoluègnes、Thierry Templier...

    spring-batch分区处理示例

    在Spring Batch中,分区处理是一种优化策略,它将大型工作负载分解成多个较小、独立的任务,这些任务可以在不同的线程或甚至不同的节点上并行运行,从而提高处理速度。在本示例中,我们将深入探讨"spring-batch 分区...

    quartz整合springbatch动态集群定时实现mysql参考

    通过这个项目,开发者可以学习到如何在分布式环境中使用Quartz进行定时任务调度,以及如何利用Spring Batch进行批量数据处理。同时,了解如何将这些组件与MySQL数据库相结合,实现高可用性和可扩展性。对于希望构建...

    SpringBoot+Batch实现

    spring batch官方文档:...简单的任务操作实现,当前项目只是一个demo,我也是初学,目前启动执行完任务boot自动关闭问题还没有解决,代码可供讨论,不能直接使用,哪位大佬解决了一起讨论一下

    SIEMENS SIMATIC BATCH 详细介绍(中文版).pdf

    SIEMENS SIMATIC BATCH 详细介绍(中文版)pdf,SIEMENS SIMATIC BATCH 详细介绍(中文版)

    Spring batch in action

    Spring Batch提供了多种方式来监控作业的执行,包括日志记录、邮件通知以及通过Spring Batch Admin Web应用程序监控。 在扩展批处理作业时,Spring Batch提供了多种策略来处理大量数据和高吞吐量的情况。开发者可以...

    R语言中使用Rscript代替R CMD BATCH执行命令

    在R语言中,Rscript和R CMD BATCH是两种用于在命令行环境中执行R脚本的工具。然而,它们在使用上和功能上存在一定的差异,尤其是在不同操作系统中执行脚本时的选择与注意事项。 首先,R CMD BATCH是R语言早期版本中...

    InBatch User Guide

    标题《InBatch User Guide》表明该文档是一份指南手册,其目的是为了指导用户如何使用InBatch这款软件。InBatch可能是一款与批量处理相关的专业软件,适用于需要进行批量生产或批量操作的场景,比如工业批量控制、...

    SpringBatch学习入门

    SpringBatch 是一个强大的Java批处理框架,由Spring社区开发并维护,主要用于处理大量数据的后台操作,如批量导入导出、日志分析、定时任务等。...如果你在学习过程中遇到问题,可以通过邮件与作者交流,共同进步。

    PCS7 V7.0 SP1 Simatic Batch使用.pdf

    西门子PCS7 V7.0 SP1 Simatic Batch使用入门文档,是指导用户如何使用西门子公司推出的PCS7系统中的Simatic Batch组件的说明书。PCS7(Process Control System 7)是一套先进的、模块化的过程控制系统,广泛应用于...

Global site tag (gtag.js) - Google Analytics