步入J2EE架构和过程基础教程

对于J2EE体系架构的理解 一、何为J2EE? J2EE架构是使用Java技术开发企业级应用的一种事实上的工业标准,它是Java技术不断适应和促进企业级应用过程中的产物。Java平台有三个版本:适用于小型设备和智能卡的J2ME(Java 2 Platform Micro Edition)、适用于桌面系统的J2SE和适用于企业级应用的J2EE。Sun推出J2EE的目的是为了克服传统客户端\服务端模式的弊病,迎合Browser/Server架构的潮流,为应用Java技术开发服务器端应用提供一个平台独立的、可移植的、多用户的、安全的和基于 阅读详情
       Java2企业版(J2EE)平台由四个关键部分构成:规格说明、参考实现、兼容性测试套件和蓝图(BluePrint)计划。蓝图描绘了分布式组件架构最好的实践和设计指导方针。本文基于Rational统一过程和BluePrint示例程序介绍一个八步骤J2EE开发方法学。通过阅读这篇文章,你可以了解许多重要的J2EE架构的话题,并且能够扩展和修改这个简单的方法来解决自己特有的业务问题。
  
  在商业世界里,我们使用Java2 企业版(J2EE)解决业务问题、开发商业软件或者提供转包服务。如果一家公司想使用多层体系结构建造一个电子商务网站,通常在整个开发生命周期中需要涉及到管理者、架构师,设计人员、编程人员、测试人员和数据库专家。
  
  为了使不同部门能高效率地工作,他们经常需要一个软件开发过程。一些经典的开发过程包括瀑布模型、快速应用开发(RAD)和极限编程(XP)。本文我们将集中于一个流行的软件工程过程,即Rational统一过程(RUP)。RUP提供了一个给角色分配任务和责任的严格方法。它的目标是保证我们在预期的进度和预算内开发出满足用户需求的高质量软件。
  
  我在J2EE开发中使用RUP出于以下三个原因。首先,RUP以架构为中心;在将资源分配给全面开发之前,它先开发一个可执行的架构原型。其次,RUP是迭代并基于构件的。该架构基线通常包括一个框架或基础设施以便于通过迭代增加构件,在不影响系统其他部分的前提下定制和扩展一个系统的功能。最后,RUP利用一门工业标准语言--UML,可视化建模系统的架构和构件。RUP有四个不同的开发阶段:初始、细化、构造和移交。然而,本文从技术角度覆盖了J2EE开发的八个必要活动,主要集中在系统架构。
  
  1、 需求分析
  
  需求分析描述系统应该做什么或不应该做什么使得开发者和客户可以签署一份原始的商业合同。可以使用业务概念、领域术语、用例和用户界面(UI)模型形成功能需求文档。对于非功能需求,如性能和事务,可以在需求文档附件中详细说明。根据参与项目深度的不同,确定在纸上还是使用HTML建造高层UI模型。
  
  图1 展现了一个典型电子商务系统中的两个用例。查看订单(viewOrder)用例告诉我们一个用户通过Web界面登陆系统、查看订单列表,点击链接查看特定订单的详细信息。增加订单项(addLineItem)用例告诉我们浏览产品列表、选择感兴趣的产品并将它们添加到购买订单中。
  
 

  
图1 订购用例

  
  2、 面向对象分析
  
  分析人员构造问题领域模型:类、对象和交互。分析应该与技术和实现细节无关,并包含一个理想的模型。对象分析可以帮助理解问题并获得关于问题领域的知识。因为业务过程的改变比信息技术的改变要慢得多,所以必须要维持一个不含技术细节的纯领域模型。
  
  这两个步骤--需求分析和面向对象分析--不是J2EE特有的;对许多面向对象方法学来说,它们都非常通用。图2 显示了一个宠物店示例程序的高层对象分析模型。它用图例说明了我们从需求分析用例中识别的主要概念。我们把这些概念建模成对象并标识它们的关系。
  
 

  
图2 更高层分析模型:宠物店领域

  
  需求和对象分析的结果是为J2EE架构的开发提供切入点。为了开发架构,可以选择一个纵向联合部分(vertical piece)--经常是关键部分,如订单领域对象模型--进行对象设计、实现、测试和部署。(纵向联合部分,一个RUP概念,是指系统的一小部分。起始点是图1所示的用例子集和图3所示的领域分析模型。一个纵向联合部分的实现结果是一个全功能的微小系统,包括UI层的JSP,中间层业务对象如EJB和后端数据库。)可以将从原型中获得的经验应用于领域对象并作为对象设计阶段的指导。
  
 

  
图3 详细对象分析:订单

  
  3、 架构规格说明
  
  经过前面两个步骤,业务领域问题和需求应该比较明确了。现在,我们将工作集中在技术策略和架构上。架构是指所有构件组合定义系统的一个蓝图:结构、接口和通讯机制。我们可以进一步将架构分为企业级和应用级架构。
  
  企业级系统架构
  
  企业级系统架构包括硬件和软件基础设施、网络布局、开发、测试、生产环境等等。它反映了一个企业的长期投资。开发前,需要评估已存在的软件和硬件基础设施,如果不完全支持J2EE的话,增加新构件更新已存在系统。你需要彻底地评估硬件,包括计算机、路由器、网络转换器和网络布局,因为它们都影响到系统的性能和可靠性。图4 显示了一个可能的多层网络布局。
  
 

  
图4 企业级架构:网络布局

  
  如图4所示的一个多层企业级架构包括以下几个主要构件:
  
  一个Web浏览器客户端,可能在也可能不在客户端组织的防火墙内
  一个HTTP服务器,是一个对公众开放的Web服务器。它通常位于一个称作DMZ的子网内
  Web容器主表示层和可能的业务逻辑构件
  应用程序容器主业务逻辑构件
  关系数据库管理系统(RDBMS)和数据库主数据、数据逻辑
  
  你使用的系统架构类型依赖于安全、性能和可靠性的需求,也依赖于组织的财政状况。在缺少经验的情况下,也可以适当地从一个修理厂电话订购一台简单地二手计算机。Internet上有许多开放源代码的操作系统、Web服务器、应用程序服务器和数据库管理系统。得到这些系统的代价只是几百美元和熬几个通宵。
  
  象许多华尔街金融机构这样的高端客户也许需要一个连续支持安全、高吞吐量交易和不可预料网络通讯的系统。在这种情况下,为了容错,通常需要将Web服务器和应用程序服务器集群配置成一个n层架构。
  
  还需要评估软件基础设施,包括Web服务器、安全管理软件、应用程序服务器、域名管理服务器、数据库管理系统和第三方软件构件。如果还没有购买应用程序服务器,选择一个J2EE供应商将是评估过程的一个重要方面。应该注意到不同的供应商对J2EE的实现程度是不同的,一些供应商只支持老的J2EE版本。另外,一些Web容器或应用程序容器可能比其他的速度要快。除了实现J2EE规范外,许多供应商还出售J2EE基础构件或框架。选择一个稳定的提供支持的J2EE供应商也非常关键。你可以在系统基础设施层面上购买或开发的通用功能包括:
  
  事务
  国际化和本地化
  集群和对象分布
  应用程序性能度量和剖析
  通讯
  工作流管理
  入口和个性化管理
  层对层通讯协议
  安全和防火墙
  
  应用架构
  
  应用架构参考一个特定的项目和规范建立在企业级系统架构的上层。在基础设施完成后,架构师研究怎样构造一个特定的应用。如果你的企业级架构仅部分支持老的J2EE版本,可以先升级你的系统。如果由于预算或时间关系不能升级,那么必须在更老版本规定的技术范围内开展工作。虽然构造企业级重用构件非常重要,但是必须首先要能够使用。这里的最终目标是满足客户的需求--一次一个项目。
  
  架构师不是设计师;架构和设计是完全不同。一个应用架构的范围包括系统的主要结构、架构设计模式和可以在上面增加构件的框架。架构主要关注的是非功能性方面,而设计关注应用业务用例将领域对象模型转换成技术对象模型。应用架构是项目的结构,一个特殊的应用程序。通过应用架构开发,你通常必须要做的应用架构决定包括:
  
  层之间进行功能划分
  领域对象建模
  要保护的遗留系统
  要购买的软件构件
  要开发的构件
  怎样集成第三方构件
  
  图3的订单领域对象说明了怎样对领域对象进行建模。利用当前的Java技术,可以将领域对象分布在作为开发者管理持续性对象的Web容器中、应用程序服务器的EJB中或者作为RDBMS宿主的Java存储过程中。
  
  在宠物店蓝图中,我们将订单对象设计成一个实体bean,一个详细对象和一个数据访问对象,如图5和后面的图6所示。当你看到这个的时候,你应该意识到架构的重要性。为什么分析模型中的一个领域对象映射成这么多对象?如果改变设计,会出现什么问题?你也许听说过EJB的好处,但是要注意不同供应商的性能是不同的。当一种新技术到来的时候,你需要在投入全面设计之前进行一些研究。你可以经常地将设计和实现领域对象模型纵向联合部分的经验应用到其他许多领域对象中。这就是架构开发的内容。
  

  
图5 企业级架构:网络布局

  
  如图5所示的一个多层企业级架构包括以下几个主要构件:
  
  一个Web浏览器客户端,可能在也可能不在客户端组织的防火墙内
  一个HTTP服务器,是一个对公众开放的Web服务器。它通常位于一个称作DMZ的子网内
  Web容器主表示层和可能的业务逻辑构件
  应用程序容器主业务逻辑构件
  关系数据库管理系统(RDBMS)和数据库主数据、数据逻辑
  
  你使用的系统架构类型依赖于安全、性能和可靠性的需求,也依赖于组织的财政状况。在缺少经验的情况下,也可以适当地从一个修理厂电话订购一台简单地二手计算机。Internet上有许多开放源代码的操作系统、Web服务器、应用程序服务器和数据库管理系统。得到这些系统的代价只是几百美元和熬几个通宵。
  4、 对象设计
  在架构规范的指导下,设计从技术上扩展和修改了分析结果。虽然分析阶段的领域对象建模应该与技术细节无关,但是对象设计完全依赖于技术因素,包括平台、语言的类型和架构开发阶段选择的供应商。分析时,抬头望着星星,但在设计阶段,则要脚踏实地。理论上,为了维持业务对象的基本属性和行为,除非绝对必要,不应该破坏它们。
  
  在架构结果的指导下,详细设计工作应该说明所有类的规格,包括必须实现的属性、它们的详细接口和伪代码或操作的纯文本描述。规格说明应该足够详细使得和模型图结合时,它可以提供所有必须的编码信息。在许多自动化软件生产过程中,我们可以从面向对象图生成代码框架。图5和6 说明了对一些领域对象的高层和详细设计对象。注意桩(stub)和框架(skeleton)在图中经常是不可见的,因为它们对设计人员和编程员来说是透明的。我将它们包括在图6中以说明EJB的基础部分。
  
  

  
图6 对象设计模型:订单EJB详细设计

  
  在完成了详细对象设计后,还需要完成领域对象的对象-关系映射。原因是虽然面向对象方法学现在非常流行,但是大多数流行且成熟的持续性存储却是关系型的。另外,在许多情况下,客户的IT基础设施已经反映了对商业RDBMS供应商的投资和偏爱。所以,将领域对象转换成关系模型或数据库表是非常重要的。虽然有许多容器管理的持续性工具,但它们不能取代好的关系数据库设计。
  
  5、 实现
  
  在良好的架构和详细设计条件下,实现应该是一个明确的任务。另外,因为我们设计和实现架构原型阶段的纵向联合部分,所以实现阶段应该更没有什么值得惊讶的。在许多组织中,开发者经常过早地到达实现阶段。尤其当管理者盯着开发人员确保在编码,而不是做他们认为在浪费公司时间的其他事情时,这种情况变得更加严重。
  
  结果,不再花数小时或数天绘出UML草图,而是通常在发费数周或数月编码的同时测试自己的想法。由于在这种情况下,所有地架构决定和设计都是在编码阶段做出来的,所以经常过了数月后才发现开发的方向出错了。
  
  6、 验证
  
  验证包括测试验证系统按设计要求运行并满足需求。验证过程发生在整个开发生命周期的开发和产品环境中。单元测试、集成测试和用户测试本身就是非常重要的主题。
  
  7、 装配和部署
  
  构件装配和解决方案部署在J2EE开发中特别重要。开发和产品环境可能非常不同。如果EJB在系统中,你需要使用供应商特定的工具得到容器自动生成的类,因为,正如我以前指出的,Web和应用程序构件配置对不同的供应商来说是不同的。你也必须考虑要部署的系统是否含有供应商特定代码实现。在可扩展架构中,系统结构应该是稳定的但也应该在不影响整个系统的条件下支持新或老构件的增量部署。
  
  8、 运行和维护
  
  在最后阶段,应用程序到了用户手中,你必须给他们提供培训和文档。用户会发现错误并可能要求新特性。你必须适当地改变管理过程来处理这些情况。你不必为了部署一个新构件或取代老构件而关闭一个正在运行的系统。
  
  架构开发过程
  
  知道了必须做出许多架构决定,因此我们必须为架构开发描绘一个过程。对于一个企业来说通常有许多应用项目,它们中的一些可能跨越数年,结果是系统演化包含许多周期。在你的领域里存在着许多跨越多个项目的通用需求。你应该不费力地在它的生命周期或其他项目中使用以前项目周期的可扩展且可重用的架构。为一系列软件应用提供同属结构和行为的通用框架和可重用软件架构是非常需要的。
  
  如果是第一个J2EE项目,架构必须做原型、测试、度量、分析并在迭代中进行推敲。蓝图提供了许多好的设计指导和实践,宠物店示例程序可以作为一个很好的参考架构。最有效地快速、高质量发布好的解决方案的方法是接受和扩展蓝图参考架构并插入你自己的业务构件。你最后要做的就是改造车轮。
  
  接受一个参考架构
  
  就我的理解,宠物店架构的精华是模型-视图-控制和命令模式。你可以将这些模式应用到以Web为中心和以EJB为中心的系统中。对于每个领域对象,视图用嵌套的JSP表示。控制器处理相关的业务事件,领域对象封装业务逻辑、事物和安全。我们使用门户servlet作为中心控制器接受和截获所有用户的动作。它将业务事件分发给特定的调用领域对象改变持续状态的领域对象控制器。依靠事件处理结果,控制器选择下一个要展现的视图。下面是我们可以修改并在大多数J2EE应用程序中使用的主要构件:
  
  a、 MainServlet:门户构件,Web容器和框架之间的接口
  
  b、 ModelUpdateListener:获得模型更新事件对象的接口
  
  c、 ModelUpdateNotifier:当更新模型事件发生时通知侦听器
  
  d、 RequestProcessor:处理所有从MainServlet来的请求。
  
  e、 RequestHandler:即插即用请求处理构件接口
  
  f、 RequestHandlerMapping:包含请求处理映射规则
  
  g、 RequestToEventTranslator:中心请求处理器根据请求处理映射规则代理即插即用请求处理构件的请求。将http请求转换为业务事件
  
  h、 EstoreEvent:业务事件
  
  i、 ShoppingClientControllerWebImpl:代理EJB层门户控制器
  
  j、 ScreenflowManager:控制屏幕流,选择视图
  
  k、 ModelUpdateManager:EJB层模型更新管理器,通知什么模型由于事件发生了改变
  
  l、 ShoppingClientControllerEJB:EJB层门户,为EJB客户提供远程服务
  
  m、 StateMachine:中心事件处理器,根据状态处理映射规则代理即插即用处理构件的事件处理
  
  n、 StateHandler:EJB层状态处理接口
  
  o、 StateHandlerMapping:包含状态处理映射规则
  
  扩展参考架构
  
  虽然蓝图示例程序是一个好的起点,但应该根据每个项目或领域修改它。设计模式是可重用的微体系结构,可以使用它扩展参考架构。提供了一组有用的J2EE模式目录的蓝图和23个"四人帮"模式都是非常不错的资源。例如,如果想扩展参考架构支持工作流管理,你可以在部署或运行时动态地在中心控制器注册事件处理器。中心控制器会询问每个注册的事件处理器直到一个处理器返回消息表明到了命令链的末端。
  
  插入你的业务构件
  
  J2EE技术对每个人都是一样的,但是不同的领域,我们要解决的问题是不同的。一旦建立了一个基本的J2EE框架,必须实现一些用例来说明架构确实可以为你的领域服务。可以通过选用捕获系统关键功能的场景来实现,这些场景经常使用来展现关键的技术风险。从领域分析模型入手,可以象我们在图5和6中那样将领域对象映射成高层和低层设计模型。实现低层设计模型并测试是否真正在工作。如果每件事都按计划运行,那么重新评估风险开始下一个迭代,扩展要考虑的场景并选择更多的场景扩展架构的覆盖范围。经过几次迭代后,原始的架构原型应该变得稳定。识别要购买的构件,要保留的遗留系统和怎样将它们对接。下一步是软件设计,你可以使用设计指导中规定好的类似方法和过程继续开发。
  
  一步一步
  
  我们使用一个过程来将一个复杂问题分解为较小的几个问题,这使得我们可以更容易的理解和解决它们。在本文中,我们将J2EE开发分解为八个步骤,主要集中在架构和设计。我已经阐述了重要的架构并为架构决定提供了一个过程。我也讨论了J2EE架构师的角色和可交付产品。
  
  学习使用这些步骤开发J2EE解决方案就象学习跳舞的步骤一样。首先需要自觉并持之以恒地练习基本步骤。但是,一旦你对它们相当熟悉后,应该将它们放在一起并将注意力更多地集中在规模、速度、流和特定上下文中每一步的节奏。但永远不要让一个过程限制了创造性。而应该接受和扩展过程以满足自己特殊需要。记住,最终目的是提供满足客户需求的完整的J2EE解决方案。
J2EE常用技术架构说明 本文介绍了6种常见Java技术框架的架构特点:1. Spring框架采用分层架构,核心包括IoC容器、AOP支持、数据访问(JDBC/ORM)和企业服务集成;2. iBATIS作为半自动ORM框架,通过SQL映射文件实现灵活的数据访问控制;3. Struts1采用MVC模式,通过ActionServlet控制器分离业务逻辑和视图;4. Struts2通过拦截器机制解耦业务逻辑与Servlet API;5. Hibernate提供完整的对象关系映射,核心接口包括Session、Transaction等; 阅读详情

相关推荐

J2EE编程新手入门实例教程

本文还有配套的精品资源,点击获取 简介:J2EE是Java企业级开发的强大平台,本教程将引导初学者掌握其核心技术和组件。涵盖了Servlet、JSP、EJB、JMS和JTA等,以及它们在企业级应用程序中的应用。教程中还包括如何配置开发环境和编写实践案例。通过这些实践,学习者可以加深对企业级开发的理解,并为职业发展打下坚实基础。 1. J2EE平台概述 1.1 J...

weixin_36184718的博客 1269

图文详解J2EE开发环境搭建全过程

在J2EE项目实施过程中需要搭建一个完整的开发环境,涉及到的技能和工具包含:JDK、Eclipse、Tomcat、MySQL、Maven、Navicat等等。这些环境对于具备工作经验的开发人员而言想必早已是轻车熟路,但是对于刚入门的新手来说还是颇为棘手。故,在此以文档形式详细记录J2EE开发环境搭建的整个过程。

谷哥的小弟 2万+

AI量化投资开源平台——Qlib(微矿)的学习使用笔记(随缘更新)

Qlib 涵盖了量化投资的全过程,为用户的 AI 算法提供了高性能的底层基础架构,从框架设计上让用户可以更容易地应用 AI 算法来辅助解决量化投资的各个关键问题(例如 Alpha 预测,风险预测,市场动态性建模)。本文旨在记录一些面向初学者的基础内容。

in_void的博客 3133

当前流行的J2EE WEB应用架构分析(一)

1. 架构概述J2EE体系包括java server pages(JSP) ,java SERVLET, enterprise bean,WEB service等技术。这些技术的出现给电子商务时代的WEB应用程序的开发提供了一个非常有竞争力的选择。怎样把这些技术组合起来形成一个适应项目需要的稳定架构是项目开发过程中一个非常重要的步骤。完成这个步骤可以形成一个主要里程碑基线。形成这个基线有很多好处:...

weixin_33912638的博客 1014

无痛安装及初始配置 PHP 8.0.3 + Apache 2.4 + MySQL 8.0

PHP 8.0.3 + Apache 2.4 + MySQL 8.0MySQL 8.0.23 安装下载安装配置环境变量初始化MySQLPHP8.0.3 安装下载安装配置环境变量Apache 2.4 安装下载安装启动 MySQL 8.0.23 安装 下载 到官方网站下载:https://dev.mysql.com/downloads/mysql/ 目前的最新版本是MySQL 8.0.23 在Windows上有两种安装方式,一个是zip压缩文件解压然后配置,另一个是图像化界面安装。 这里选择第一种方法安装:

Kuang Da's Blog 6208

⭐⭐⭐全网最详细YOLOv8教程,从环境配置到自己训练,再到数据集的制作,包的各位⭐⭐⭐

问题原因:当你“pip install ultralytics” 时,torch和torchvision会作为它的依赖一起安装了,当执行“pip install torch torchvision torchaudio --index-url。”时,会卸载torch,然后再安装torch+cuda版本,但是不会自动卸载torchvision已有版本,然后再安装torchvision+cuda版本。🎉🎉🎉恭喜各位道友,已经可以训练模型了,现在就是制作自己的数据集,所谓申神通秘境,随心所欲,万物皆可识别也

weixin_74840239的博客 7493

J2EE架构

J2EE :Java 2 平台企业版(Web应用) 架构分为: 1.客户端 浏览器(主要) , 小程序 ,传统的客户端 2.Web层 Servlet/JSP 界面展示 涉及到的技术:HTML ,CSS, JavaScript 3.业务逻辑层 Service , dao, javabean (model) 4.信息系...

程序员小祝的博客 3536

ASPICE1-配置管理

SUP.8配置管理 BP1:开发配置管理策略 BP2:识别配置项 BP3:建立配置项管理系统 BP4:建立分支管理 BP5:控制变更和发布 BP6: 建立基线 BP7:报告配置项状态 BP8:验证配置项信息 BP9:管理配置项和基线的存储 1.配置管理概念 配置管理(Configuration Management,CM)是通过使用技术或行政手段对软件产品进行控制,以实现对软件开发过程和生命周期进行控制、规范的一系列措施。 完整性、一致性、可控性。 2.配置管理的主要活动: 1.

HDZQ2005的专栏 3687

J2EE架构简介

J2EE 体系结构简介J2EE (Java 2 Platform, Enterprise Edition)即Java2平台企业版,它提供了基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型,这个多层通常通过三层或四层来实现: ①客户层,运行在客户计算机上的组件。 ② Web 层,运行在J2EE服务器上的组件。 ③业务层,同样是运行在J2EE服务器上的组件。

cuiyaoqiang的博客 3万+

Dify 第 3 篇 Dify 入门示例 - 聊天助手

本文介绍了如何使用Dify平台快速搭建一个聊天助手。首先通过创建空白应用并选择"聊天助手"模板完成基础设置,然后安装配置通义千问等大语言模型(LLM)并设置API密钥。进阶部分演示了如何创建支持编程语言选择的代码解释器,包括添加提示词约束、插入变量、设置开场白等功能。最后展示了运行效果:用户可选择编程语言后输入代码,系统会给出相应解释。文章还提到应用支持发布共享,并附有Dify官方文档参考链接。

甘蓝的专栏 865

从底层结构开始学习FPGA(8)----Block RAM(BRAM,块RAM)

BRAM作为FPGA底层的存储资源,作用很大,比如可以RAM/ROM/FIFO。

孤独的单刀 2万+

J2EE的体系架构——J2EE

https://blog.youkuaiyun.com/dandanzmc/article/details/27355565 J2EE的体系架构 J2EE是Java2平台企业版(Java 2 Platform,Enterprise Edition),它的核心是一组技术规范与指南,提供基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型。 J2EE分层 客户层,运行在客户计算机...

try to do 1万+

Python爬虫实战:抓取全球各国海关进出口数据的全流程教程

本文系统介绍了用Python采集全球各国海关进出口数据的完整流程,从数据源调研、技术选型,到代码实战、数据处理和存储,最后还拓展了进阶反爬和动态内容处理方法。希望这篇博文能帮助你掌握专业的数据采集技能,为后续数据分析和商业应用奠定坚实基础。

2201_76125261的博客 2363

步入J2EE架构和过程(1)

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/java

java专栏 361

基于 FPGA 的 CNN 卷积神经网络之池化层 Verilog 实现

池化层是卷积神经网络(CNN)中的关键组件,用于降低特征图的维度,减少计算量和防止过拟合。常见的池化操作包括最大池化和平均池化。FPGA 提供了高效的并行处理能力,可以加速这些操作。池化层在 CNN 中扮演重要角色,通过降低数据维度提升计算效率。在 FPGA 上实现池化层,可以充分利用硬件资源实现高效的并行计算,有助于提高实时应用中的推理速度。

走向CTO的路上... 1256

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

步入J2EE架构和过程

标  题: 步入J2EE架构和过程发信站: BBS 水木清华站 (Fri Apr 26 16:02:08 2002)本文转自赛迪网开发者 developer.ccidnet.com摘要Java2企业版(J2EE)平台由四个关键部分构成:规格说明、参考实现、兼容性测试套件和蓝图(BluePrint)计划。蓝图描绘了分布式组件架构最好的实践和设计指导方针。本文基于Rational统一过程和Bl

erikxu's programming trip 1866

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

javaEE和j2EE一样吗?

javaEE和j2EE一样吗?从JDK 5.0开始 J2EE 改名为 java EE,J2SE 改名为 java SE,J2ME 改名成 java ME,其实是一回事,只是叫法改了而已java EE 是java的企业版,主要面向web应用,尤其是企业级开发,都提供了一套开发流程。(这句话个人感觉不好理解.)    1,JavaEE是标准集定义的技术架构    2,企业开发是一个面向企业开发的技术组...

dhtcdh的博客 1万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

J2EE系统架构和过程浅析

<br /><br />Java2企业版(J2EE)平台由四个关键部分构成:规格说明、参考实现、兼容性测试套件和蓝图(BluePrint)计划。蓝图描绘了分布式组件架构最好的实践和设计指导方针。本文基于Rational统一过程和BluePrint示例程序介绍一个八步骤J2EE开发方法学。<br />    通过阅读这篇文章,你可以了解许多重要的J2EE架构的话题,并且能够扩展和修改这个简单的方法来解决自己特有的业务问题。在商业世界里,我们使用Java2企业版(J2EE)解决业务问题、开发商业软件或者提供转包

TechChan的专栏 1183

J2EE是什么,主要包括哪些技术

https://blog.youkuaiyun.com/Ashes18/article/details/73614571 最近最为深刻的认识:被面试老师问到了的知识,哪些是在自己心中模棱两可,似是而非的概念都一目了然。而后,只有在顿悟中不断总结才能进步。今天,我总结的部分是J2EE到底是什么东西,它包括了哪些技术。 一、J2EE是什么? 从整体上讲,J2EE 是使用 Java 技术开发企业级应用的工业标准,它...

QDShuai的博客 3万+

java的发展-J2EE和JavaEE的区别

为了自己更好的了解java! 一直分不清楚J2EE和JavaEE的区别,根据百度百科上的解释:“此时,Java的各种版本已经更名,已取消其中的数字2,如J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME。”他们是一个东西。那他们是什么? java的开发平台提供的开发包,叫做jdk(java development kit)也可以叫做java sdk(java pla...

buzhiweibuzhi的博客 1万+

框架——JavaEE(J2EE)相关

1、什么是JavaEE? Java EE,Java 平台企业版(Java Platform Enterprise Edition),之前称为Java 2 Platform, Enterprise Edition (J2EE),2018年3月更名为 Jakarta EE(这个名称应该还没有得到群众认可)。 狭义的 Java EE 是 Sun 公司为企业级应用推出的标准平台,用来开发B/S架构软件,可以说是一个框架,也可以说是一种规范。 广义的 Java EE 包含各种框架,其中最重要的就是 Spring 全家

weixin_42924812的博客 1107

起源之路——JSR?J2EE?JavaEE?

起源之路——JSR?J2EE?JavaEE? 前言 鉴于自己工作了一段时间对各种框架中间件处于知其然不知其所以然的状态中,所以萌生了追寻起源的想法,于是便开始准备编写该系列文章,系统的整理自己对J2EE的理解。若有发现理解不到位,或有不同见解的地方,欢迎各位大神拍砖。 什么是J2EE? J2EE的全称是Java 2 Platform Enterprise Edition,它是由多家公司共同参与并制...

LuoGuoHua_Xin的博客 882

javaEE5.0与J2EE1.4比较

<br />在新建web工程时,如果选的是javaEE5自带的jstl,仅能够使用tomcat6.x才能正常使用el <br />如果选的是j2ee1.4或者j2ee1.3时,需要手动添加jstl, <br />默认与tomcat5.x兼容,所以你修改一下web.xml,因为javaEE5.0和j2ee1.4,1.3是不一样的 <br />所以对jstl和el的支持也并不相同! <br />------------------------------------------<br />在新建web工程时,如

gyflyx的专栏 5198
上一篇: 如何写出性能优良的SQL?
下一篇: 步入J2EE架构和过程基础教程
程序员长弓
博客等级 码龄20年 650粉丝 183原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值