首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用于EE应用程序的EJB和普通CDI中的调度计时器良好实践模式

EJB(Enterprise JavaBeans)是一种用于开发企业级Java应用程序的组件模型,而CDI(Contexts and Dependency Injection)是Java EE的一种依赖注入框架。调度计时器是一种用于在特定时间间隔或时间点执行任务的机制。

在EE应用程序中,使用EJB和CDI的调度计时器可以实现良好的实践模式,具体如下:

  1. EJB调度计时器:
    • 概念:EJB调度计时器是一种由EJB容器管理的定时任务,可以在指定的时间间隔或时间点触发执行。
    • 分类:EJB调度计时器分为基于时间间隔的计时器和基于时间点的计时器。
    • 优势:EJB调度计时器提供了可靠的任务调度和执行机制,具有事务支持、容器管理、并发控制等特性。
    • 应用场景:适用于需要在后台执行定时任务的企业级应用程序,如定时生成报表、定时发送邮件等。
    • 推荐的腾讯云相关产品:腾讯云容器服务(TKE)提供了容器化部署和管理的环境,可用于部署和运行支持EJB的Java应用程序。详情请参考:腾讯云容器服务
  • CDI调度计时器:
    • 概念:CDI调度计时器是一种由CDI容器管理的定时任务,可以在指定的时间间隔或时间点触发执行。
    • 分类:CDI调度计时器只支持基于时间间隔的计时器。
    • 优势:CDI调度计时器提供了轻量级的任务调度和执行机制,可以与其他CDI组件无缝集成。
    • 应用场景:适用于需要在应用程序内部执行简单定时任务的场景,如定时清理缓存、定时更新数据等。
    • 推荐的腾讯云相关产品:腾讯云函数计算(SCF)提供了事件驱动的无服务器计算服务,可用于执行CDI调度计时器任务。详情请参考:腾讯云函数计算

综上所述,EJB和普通CDI中的调度计时器在EE应用程序中都是良好的实践模式。使用EJB调度计时器可以获得更强大的功能和容器管理特性,适用于复杂的企业级定时任务;而使用CDI调度计时器可以获得轻量级的任务调度和无缝集成的优势,适用于简单的应用程序内部定时任务。腾讯云的容器服务和函数计算可以作为推荐的云计算产品来支持这两种调度计时器的部署和运行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

JavaEE中资源注入松耦合的实现 | 从开发角度看应用架构13

上下文和依赖注入(CDI)规范是Java EE规范中的许多从属规范之一。...这意味着每个被认证为符合Java EE 7的应用程序服务器(例如JBoss EAP)必须本身支持上下文和依赖项注入。 CDI有两个主要部分:上下文和依赖注入。...在JBoss EAP上运行的Java EE 7应用程序中,开发人员通常会将这两种技术相互结合使用。 所有EJB都是CDI bean,因此可以访问依赖注入,并且有资格自己注入。...EJB规范建立在CDI规范的基础上,提供更多功能,区分无状态bean和有状态bean。 EJB还提供其他功能,例如并发功能,bean池,安全性以及CDI中未包含的其他功能。...三、使用依赖注入 CDI不会在Web应用程序、EJB或Java库(JAR)中自动激活,因为容器扫描每个应用程序和每个库都是低效的。

1.2K20

【方向盘】Java EE几十种技术,“活着的”还剩几何(企业应用技术篇)

本文继续,继续领略Java EE的企业应用技术,它曾在企业级开发中叱咤风云,来看看它现在的生存现状。...EJB技术的诞生标志着Java Beans的运行正式从客户端领域扩展到服务器领域。 用于基于组件的事务性分布式编程。EJB不仅指定了bean格式,而且定义了运行bean的容器必须提供的一组服务。...顾名思义,帮助我们发送Email电子邮件用的。方便Java开发人员在应用程序中实现邮件发送和接收功能而提供的一套标准开发包,它支持一些常用的邮件协议,如SMTP,POP3,IMAP,还有MIME。...JTA 推荐学习指数 ⭐️⭐️⭐️ Java Transaction API (JTA):用于描述Java EE框架中事务管理器与应用程序,资源管理器,以及应用服务器之间的事务通讯。...Interceptors 推荐学习指数 ⭐️ 它是Java EE的拦截器,和EJB一起使用。

1.1K40
  • 重点来了:事务一致性的深入研究&EJB的全生命周期 | 从开发角度看应用架构5

    二、EJB的生命周期 应用程序中的EJB组件在应用程序服务器内的容器上下文(也就是EJB container)中运行。 EJB容器负责管理EJB的生命周期(创建,执行和销毁)。...有状态的EJB(对象)是通过JNDI调用或CDI注入在应用程序服务器内存中创建的,并且已准备好让其客户端调用其业务方法。...Ready: 无状态EJB(对象)通过JNDI调用或CDI注入在应用程序服务器内存中创建,并准备好让客户端调用其业务方法。 ? 3....三、隐式和显式事务 典型的Java EE企业应用程序,通常会访问、操作一个或多个持久数据存储中的数据,这些数据通常在关系数据库里(RDBMS)。...如果使用@TransactionAttribute在类级别注释EJB,则指定的属性适用于EJB中的所有方法。 使用@TransactionAttribute注解特定方法仅将该属性应用于该方法。

    87740

    Spring认证-Spring核心基础教程详解?

    Spring Framework 的核心功能可用于开发任何 Java 应用程序,但有一些扩展可用于在 Java EE 平台之上构建 Web 应用程序。...Spring 框架旨在通过启用基于 POJO 的编程模型使 J2EE 开发更易于使用并促进良好的编程实践。...与现有框架的集成——Spring 不会重新发明轮子,而是真正利用了一些现有技术,如几个 ORM 框架、日志框架、JEE、Quartz 和 JDK 计时器以及其他视图技术。...可测试性- 测试用 Spring 编写的应用程序很简单,因为依赖于环境的代码被移到了这个框架中。此外,通过使用 JavaBeanstyle POJO,使用依赖注入来注入测试数据变得更加容易。...轻量级- 轻量级 IoC 容器往往是轻量级的,尤其是与 EJB 容器相比时。这有利于在内存和 CPU 资源有限的计算机上开发和部署应用程序。

    33640

    《Spring Boot极简教程》第1章 Spring Boot史前简述小结参考资料

    使用极简XML和POJO(普通Java对象),结合EJB的替代品(如Hibernate),Spring在企业级Java开发上占据了绝对领先地位。...事实上,sun设计J2EE的初衷正是为了解决两层模式(client/server)的弊端,在传统模式中,客户端担当了过多的角色而显得臃肿。...MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。...——马克思 人的认识来源于实践,是随着实践的发展而发展的。通过实践得出的认识,只有作用于实践并通过实践的检验,才能够确定认识的正确与否。 循证架构思想来源于”循证实践“。...在Java EE 5以后的版本中,注释成为了一个主要的配置选项。Spring使用注释来描述Bean的配置与采用XML相比,因类注释是在一个类源代码中,可以获得类型安全检查的好处。可以良好的支持重构。

    56920

    「Spring认证」Spring 框架概述

    Spring Framework 的核心功能可用于开发任何 Java 应用程序,但有一些扩展可用于在 Java EE 平台之上构建 Web 应用程序。...Spring 框架旨在通过启用基于 POJO 的编程模型使 J2EE 开发更易于使用并促进良好的编程实践。...仅使用 POJO 的好处是您不需要 EJB 容器产品(如应用程序服务器),但您可以选择仅使用健壮的 servlet 容器(如 Tomcat 或某些商业产品)。 Spring 以模块化方式组织。...Spring 并没有重新发明轮子,而是真正利用了一些现有技术,如几个 ORM 框架、日志框架、JEE、Quartz 和 JDK 计时器以及其他视图技术。...轻量级 IoC 容器往往是轻量级的,尤其是与 EJB 容器相比时。这有利于在内存和 CPU 资源有限的计算机上开发和部署应用程序。

    50940

    第1章 Spring Boot史前简述小结参考资料

    使用极简XML和POJO(普通Java对象),结合EJB的替代品(如Hibernate),Spring在企业级Java开发上占据了绝对领先地位。...事实上,sun设计J2EE的初衷正是为了解决两层模式(client/server)的弊端,在传统模式中,客户端担当了过多的角色而显得臃肿。...MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。...——马克思 人的认识来源于实践,是随着实践的发展而发展的。通过实践得出的认识,只有作用于实践并通过实践的检验,才能够确定认识的正确与否。 循证架构思想来源于”循证实践“。...在Java EE 5以后的版本中,注释成为了一个主要的配置选项。Spring使用注释来描述Bean的配置与采用XML相比,因类注释是在一个类源代码中,可以获得类型安全检查的好处。可以良好的支持重构。

    63540

    | 从开发角度看应用架构2:对Java EE应用进行打包和部署!

    JBoss企业应用平台7,JBoss EAP 7或简称EAP,是一个用于托管和管理Java EE应用程序的应用程序服务器。...Java EE API和框架(由EAP提供)还支持常见的应用程序功能,用于开发Web用户界面,公开Web服务,实现加密和其他功能。...EJB容器:部署和配置与EJB,JPA和JMS相关的组件。这些类型的部署将在后面的章节中详细介绍。 容器负责安全性、事务处理、JNDI查找和远程连接等。...Java命名和目录接口(JNDI)是目录服务(用于查找资源)的Java API,允许组件通过逻辑名称发现和查找对象。 资源是一个逻辑对象,可以被Java EE应用程序中的组件查找和使用。...七、使用CDI进行资源注入 Java EE 7提供上下文和依赖注入(CDI),使组件无需手动实例化服务器资源或组件对象,即可获取对其他组件对象的引用以及应用程序服务器资源。

    3.3K20

    Spring详解(一)------概述

    在该书中,作者根据自己多年丰富的实践经验,对EJB的各种笨重臃肿的结构进行了逐一的分析和否定,并分别以简洁实用的方式替换之。至此一战功成,Rod Johnson成为一个改变Java世界的大师级人物。...BeanFactory 使用控制反转(IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。   ...Spring 上下文包括企业服务,例如JNDI、EJB、电子邮件、国际化、校验和调度功能。   ...Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。   ...Spring框架的功能可以用在任何J2EE服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE服务的可重用业务和数据访问对象。

    88570

    大白话说前端应用 | 从开发角度看应用架构10

    别着急,我们用大白话说: 本质上讲,EJB Container和web container本质的功能是类似的。...EAP有很多功能,它是完全符合Java EE框架和标准的: Batch API Java API for JSON Processing (JSON-P) Concurrency utilities WebSocket...ItemRepository被以CDI方式注入到ItemService中,ItemService有被用CDI的方式注入到ItemResourceRESTService中,以便为前端提供RESTService...这个类在应用程序中创建一个todo项目。它有三个属性:一个id,一个描述和一个表示任务是否完成的布尔属性(如前端页面:1 Buy Milk Done)。 如下图箭头所示: ?...该文件位于rest文件夹中。 ? ? 注意到这个类需要使用ItemService EJB来调用EJB的方法,并向前端层提供JSON响应。

    1.1K30

    Servlet揭秘:推动Java Web开发的动力

    一句话介绍:Java EE(现称Jakarta EE)是一个用于开发和运行企业级应用程序的Java平台,提供了丰富的API和组件以支持高性能、可扩展的多层架构。...Java EE的主要组件 Servlet:用于处理HTTP请求和响应的服务器端组件。 JSP:用于创建动态网页的技术,允许在HTML中嵌入Java代码。...EJB:用于构建分布式企业级应用程序的组件,提供事务管理、安全性等功能。 JPA(Java Persistence API):用于对象关系映射(ORM)的API,简化了数据库操作。...JMS:用于异步通信的API,允许不同组件之间进行消息传递。 CDI(Contexts and Dependency Injection):用于管理组件的生命周期和依赖关系的API。...它的丰富功能和组件模型使得开发者能够高效地开发和维护大规模的Web应用程序。随着Jakarta EE的推出,Java EE的未来也在不断发展,适应现代应用程序的需求。 2.

    12710

    Spring简介

    在该书中,作者根据自己多年丰富的实践经验,对EJB的各种笨重臃肿的结构进行了逐一的分析和否定,并分别以简洁实用的方式替换之。...Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。   ...Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。   ...Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。...毫无疑问,这样的对象可以在不同J2EE 环境(Web 或EJB)、独立应用程序、测试环境之间重用。

    50520

    Jakarta EE 10发布,开启云原生Java时代

    Jakarta EE 10 引入了用于构建现代化、简化和轻量级云原生 Java 应用程序的功能。...查询中的新功能,并使用纯 Java 创建 Jakarta Faces 视图 Jakarta EE 10 版本使用 Jakarta EE Core Profile 10 定义了一个新的配置文件规范,该规范定义了一个用于现代化和轻量级...新的核心配置文件提供了 Jakarta EE 规范的子集,这些规范针对适合具有轻量级运行时的微服务开发的较小运行时,包括用于构建轻量级 Jakarta EE 应用程序的新 CDI-Lite 规范。...,增强了应用程序可用的并行和反应式编程模型 Jakarta EE 10 版本使构建现代化云原生 Java 应用程序的企业能够: 在 Java SE 11 和 Java SE 17(Java SE 的最新...LTS 版本)上开发和部署 Jakarta EE 10 应用程序 利用 Java SE 9 中引入并在 Java SE 11 中支持的模块系统等新功能 此版本通过支持更广泛地使用附加注释来简化应用程序开发

    42320

    从开发角度看四类企业应用架构1: 通过Maven编译并运行一个Java应用

    Java EE应用程序部署在与Java EE兼容的应用程序服务器上,这些部署可以有不同的类型: JAR文件:应用程序的各个模块和Enterprise Java Beans(EJB)可以作为单独的JAR...使用如Apache Maven之类的构建工具来简化构建、打包、测试、执行和部署Java SE和Java EE应用程序也是最佳实践。 Maven有一个插件架构来扩展其核心功能。...有用于构建、打包和部署Java EE应用程序的Maven插件。所有部署类型都受支持。...这些通常是企业Java Bean(EJB),普通旧Java对象(POJO),实体Bean,消息驱动Bean和数据访问对象(DAO)的混合体,它们与持久性存储系统(如RDBMS,LDAP和其他。...四、Maven 目前开发、测试、构建、打包和部署Java SE和Java EE应用程序的最佳实践是使用Apache Maven。

    1.5K20

    构建现代应用:Java中的热门架构概览

    ❤️ Java作为一门广泛应用于企业级应用开发的编程语言,拥有众多成熟的架构和框架,用于构建各种规模的应用程序。...在Java中,通常使用Java类和EJB(Enterprise JavaBeans)来实现业务逻辑。...Spring Boot简化了微服务的创建和部署,而Spring Cloud提供了一组工具来解决微服务架构中的常见问题,如服务注册和发现、负载均衡、断路器模式等。...Java EE包括各种技术,如Servlets、JSP、EJB、JMS(Java Message Service)、JPA和CDI(Contexts and Dependency Injection),...核心概念: Java EE是Java平台的企业级版本,用于构建大型、分布式和可扩展的应用程序。它包括多个规范,如Servlets、JSP、EJB、JMS、JPA和CDI,用于开发企业级应用。

    1.6K21

    Jakarta EE 10发布,开启云原生Java时代

    Jakarta EE 10 引入了用于构建现代化、简化和轻量级云原生 Java 应用程序的功能。...查询中的新功能,并使用纯 Java 创建 Jakarta Faces 视图  Jakarta EE 10 版本使用 Jakarta EE Core Profile 10 定义了一个新的配置文件规范,该规范定义了一个用于现代化和轻量级...新的核心配置文件提供了 Jakarta EE 规范的子集,这些规范针对适合具有轻量级运行时的微服务开发的较小运行时,包括用于构建轻量级 Jakarta EE 应用程序的新 CDI-Lite 规范。...,增强了应用程序可用的并行和反应式编程模型 Jakarta EE 10 版本使构建现代化云原生 Java 应用程序的企业能够: 在 Java SE 11 和 Java SE 17(Java SE 的最新...LTS 版本)上开发和部署 Jakarta EE 10 应用程序 利用 Java SE 9 中引入并在 Java SE 11 中支持的模块系统等新功能 此版本通过支持更广泛地使用附加注释来简化应用程序开发

    52010

    Spring工作原理

    BeanFactory 使用控制反转 (IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。      ...Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。      ...Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。      ...Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。...毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB)、独立应用程序、测试环境之间重用。

    2.1K20

    DDD 领域驱动设计:贫血模型、充血模型的深入解读!

    分离到不同的对象中: 只有状态的对象就是所谓的“贫血对象”(常称为VO——Value Object); 只有行为的对象就是,我们常见的N层结构中的Logic/Service/Manager层(对应到EJB2...Eric Evans的Domain Driven Design一书中提到: 应用层(即Service层) 描述应用程序所要做的工作,并调度丰富的领域模型来完成它。...这个层次的任务是描述业务逻辑,或和其它项目的应用层做交互。这层很薄,不包含任何业务规则或知识,仅用于调度和派发任务给下一层的领域模型。这层没有业务状态,但可以为用户或程序提供任务状态。...他在服务模式中复述了这一观点:如今人们常犯的错误是不愿花时间将业务逻辑放到合适的领域模型中,从而逐渐形成面向过程的程序设计。 我不清楚为什么这种反模式会那么常见。...因此实际工程场景中,是否使用,如何使用还依赖于设计者以及团队充血模型设计的理解和把握,因为现在绝大多数J2EE开发者都受贫血模型影响非常深。

    10.4K44

    DDD领域驱动设计-充血模型、贫血领域模型

    贫血模型即事务脚本模式 充血模型即领域模型模式 贫血模型 最早广泛应用源于EJB2,最强盛时期则是由Spring创造,把 “行为”(逻辑、过程) “状态”(数据,对应到语言就是对象成员变量) 分离到不同的对象中...: 只有状态的对象就是所谓的“贫血对象”(常称为VO——Value Object) 只有行为的对象就是我们常见的N层结构中的Logic/Service/Manager层(对应到EJB2中的Stateless...Eric Evans的Domain Driven Design一书中提到: 应用层(即Service层) 描述应用程序所要做的工作,并调度丰富的领域模型来完成它。...这个层次的任务是描述业务逻辑,或和其它项目的应用层做交互。这层很薄,不包含任何业务规则或知识,仅用于调度和派发任务给下一层的领域模型。这层没有业务状态,但可以为用户或程序提供任务状态。...因此实际工程场景中,是否使用,如何使用还依赖于设计者以及团队充血模型设计的理解和把握,因为现在绝大多数J2EE开发者都受贫血模型影响非常深。

    85030

    Spring工作原理

    BeanFactory 使用控制反转 (IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。...Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。...Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。...Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。...毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB)、独立应用程序、测试环境之间重用。

    60210
    领券